數組是 PHP 最核心的數據結構,explode() 是字符串轉數組的高頻函數。本文通過三個遞進示例,涵蓋數組遍歷、字符串分割、多字符分隔符分割,適合初學者快速上手。
<?php
$province = [
"北京","上海","天津","重慶","河北","山西","內蒙古","遼寧","吉林","黑龍江",
"江蘇","浙江","安徽","福建","江西","山東","河南","湖北","湖南","廣東",
"廣西","海南","四川","貴州","雲南","西藏","陝西","甘肅","寧夏","青海",
"新疆","香港","澳門","台灣","其他"
];
echo "數組長度: " . count($province) . "<br/>";
if (is_array($province)) {
echo "確認為數組</br>";
}
for ($i = 0; $i < count($province); $i++) {
echo $province[$i] . "</br>";
}
?>
<?php
$source = "hello1,hello2,hello3,hello4,hello5";
$hello = explode(',', $source);
for ($i = 0; $i < count($hello); $i++) {
echo $hello[$i] . "</br>";
}
?>
<?php
$date = "04/30/1973";
// 現代寫法:preg_split 或 explode 結合 str_replace
// 任意分隔符 / . -
list($month, $day, $year) = preg_split('/[\/.-]/', $date);
echo "Month: $month; Day: $day; Year: $year<br/>";
?>
提示:
split()在 PHP 5.3 棄用、7.0 移除,請使用preg_split()或explode()配合預處理。
// 限制返回片段數
$str = "a,b,c,d,e";
print_r(explode(',', $str, 3)); // ['a', 'b', 'c,d,e']
print_r(explode(',', $str, -2)); // ['a', 'b', 'c'] (PHP 5.1+ 負數限制)
// 反向操作:implode 組合
$arr = ['apple', 'banana', 'orange'];
echo implode(', ', $arr); // "apple, banana, orange"
explode('', $str) → ValueError。