我有以下陣列在PHP結合數組字符串在PHP
$arrOrders['remains'] = 'ASC';
$arrOrders['rate'] = 'DESC';
如何使用合併爲一個字符串像剛剛與本地函數?
$str = 'remain ASC, rate DESC';
我有以下陣列在PHP結合數組字符串在PHP
$arrOrders['remains'] = 'ASC';
$arrOrders['rate'] = 'DESC';
如何使用合併爲一個字符串像剛剛與本地函數?
$str = 'remain ASC, rate DESC';
$a = array(
'remains' => 'ASC',
'rate' => 'DSC'
);
echo implode(', ', array_map(function($v1, $v2) {
return sprintf('%s %s', $v1, $v2);
}, array_keys($a), array_values($a)));
// remains ASC, rate DSC
您是否總是使用您熟悉的所有PHP函數進行每個簡單的操作? –
+1使用函數,任何人都知道這個瓶坯vs簡單的foreach HL。貼? – Blem
不是真的 - 但我必須承認我喜歡數組上的函數式方法。這是一個味道的問題... –
您正在尋找implode,但劑量不包括鍵,但頁面上的第一個註釋是包括按鍵
/**
* Implode an array with the key and value pair giving
* a glue, a separator between pairs and the array
* to implode.
* @param string $glue The glue between key and value
* @param string $separator Separator between pairs
* @param array $array The array to implode
* @return string The imploded array
*/
function array_implode($glue, $separator, $array) {
if (! is_array($array)) return $array;
$string = array();
foreach ($array as $key => $val) {
if (is_array($val))
$val = implode(',', $val);
$string[] = "{$key}{$glue}{$val}";
}
return implode($separator, $string);
}
$arrOrders = array(
'remains' => 'ASC',
'rate' => 'DSC'
);
$str = array_implode(' ', ', ', $arrOrders);
功能你可以這樣做:
$string = '';
foreach($arrOrders as $key => $value)
$string = $string . "$key $value, ";
$string = rtrim($string, ', '); // cut the last comma at the end of the string
echo $string // remains ASC, rate DESC
會逗號實際切? –
不要太爲選票而着急。這不值得。 –
哈哈,有什麼區別:) –
有沒有考慮過使用'foreach'來處理數組? –