2011-05-23 69 views
1

我有一個數組作爲$arr = array("name" => "Fom Xong" , "Sales" => "100");PHP數組操作

從這個數組我要生成一個字符串像這樣

$str = 'name="Fom Xon" Sales="100"'; 

是否有可能???

在此先感謝

+4

@Shakti辛格:http://stackoverflow.com/questions/4529640/get-the-year-from-specified-date-php ---當**你**問你有rtfm-like問題時你有禮貌和具體的答案;-) – zerkms 2011-05-23 06:12:13

+1

@zerkms:Tha t不像rtfm問題。我想出了具體的問題,這就是爲什麼這個問題得到4 upvote – 2011-05-23 06:15:08

+1

@Shakti辛格恥辱,其實你沒有生成一個答案,所以你自己生氣 – DingDongDev 2011-05-23 06:16:41

回答

3

例如,你可以這樣做:

$tmp_arr = array(); 
foreach ($arr as $key => $val) 
    $tmp_arr[] = $key.'="'.$val.'"'; 

$str = implode(' ', $tmp_arr); 
+0

你得到+1,只是因爲我儘量避免在PHP中擴展可變字符串。 :) – 2011-05-23 06:17:07

+1

謝謝老闆。上帝給你一個嬰兒! – DingDongDev 2011-05-23 06:18:56

+1

@John我知道我應該使用'sprintf('%s =「%s」',$ key,$ value)'...;) – deceze 2011-05-23 06:25:01

1
$output = array(); 
foreach ($arr as $key => $value) { 
    $output[] = "$key=\"$value\""; 
} 
echo join(' ', $output); 

或者:

echo join(' ', array_map(function ($key, $value) { return "$key=\"$value\""; }, array_keys($arr), $arr)); 
+1

嗯,爲什麼downvoted?我已經寫了幾乎相同的... – zerkms 2011-05-23 06:08:39

+0

癢downvote手指? – deceze 2011-05-23 06:08:47