$data = "google,98%,bing,92%,searchengine,56%,seo,85%,search,94%";
我想如果你希望你爲包含新行一個字符串輸出,您可以使用拆分thsese並獲得最終結果如何拆分這些數組?
google = 98%
bing = 92%
searchengine = 56%
seo = 85%
search = 94%
$data = "google,98%,bing,92%,searchengine,56%,seo,85%,search,94%";
我想如果你希望你爲包含新行一個字符串輸出,您可以使用拆分thsese並獲得最終結果如何拆分這些數組?
google = 98%
bing = 92%
searchengine = 56%
seo = 85%
search = 94%
怎麼樣。 ..
$data = "google,98%,bing,92%,searchengine,56%,seo,85%,search,94%";
$dataSet = array_combine(array_map(create_function('$entry', 'return $entry[0];'),
array_chunk(explode(",", $data), 2)),
array_map(create_function('$entry', 'return $entry[1];'),
array_chunk(explode(",", $data), 2)));
foreach ($dataSet as $cType => $cPercentage) {
echo $cType . " = " . $cPercentage;
}
試試這個:
$data = "google,98%,bing,92%,searchengine,56%,seo,85%,search,94%";
preg_match_all("/(\w+),(\d+)%/", $data, $data_array, PREG_SET_ORDER);
foreach($data_array as $item) {
print $item[1]." = ".$item[2]."%<br />";
}
解析一切都發生在同一行;唯一的循環是在輸出中。你可以做print_r($data_array)
來查看數組是如何構造的,以防你想用數據做不同的事情。
此外,如果您希望百分號包含在數據中,則可以將其移至第二個括號對的內部。但是,如果你離開它(和只是顯示它在輸出時),它會更容易對數據進行計算,如果你需要
這將讓你的關聯數組:
$out = array();
$parts = explode(',', $data);
for($i=0;$i<count($parts);$i++) {
$out[$parts[$i]] = $parts[++$i];
}
你想要什麼格式的最終結果?一個關聯數組?一串字符串,每行一個?包含新行的單個字符串? – 2011-01-29 16:19:06
這是我想要展示的頁面上的最終結果,因此得到如此如此的百分比......實際上對於seo pupose – 2011-01-29 16:21:55
`str_replace(',','=',str_replace('%,',「%\ r \ n「,$ str));`;-)))學會正確提問。 – zerkms 2011-01-29 16:23:07