| 函式 | 用途 | 參數順序 | 回傳值 |
|---|---|---|---|
explode() | 字串 → 陣列 (分割) | explode(分隔字串, 字串, [限制]) | 陣列 |
implode() | 陣列 → 字串 (合併) | implode(黏著字串, 陣列) 或 implode(陣列) | 字串 |
function htmlTemplate($tag) {
$url = "file.txt"; // 內容以 <!-- 內容 --> 為分隔
$content = file_get_contents($url);
if (empty($content)) {
return 'error';
}
// 1. 分割大區塊
$blocks = explode('<!-- 內容 -->', $content);
if ($tag) {
return $blocks[1] ?? ''; // 直接回傳第 2 區塊
}
// 2. 進一步處理第 17 區塊 (索引 16)
$temp = $blocks[16] ?? '';
$parts = explode('</span>', $temp); // 再次分割
// 3. 取前 4 段並合併
$selected = array_slice($parts, 0, 4);
return implode('</span>', $selected) . '</span>';
}
$str = "a,b,c,d,e";
// 正數:最多回傳 N 個元素,最後一個包含剩餘內容
explode(',', $str, 3); // ['a', 'b', 'c,d,e']
// 負數 (PHP 5.1+):排除最後 N 個元素
explode(',', $str, -2); // ['a', 'b', 'c']
// 推薦:黏著字串在前
implode(',', $arr);
// 舊版相容:陣列在前 (已棄用)
implode($arr, ',');
explode(',', ''); // 回傳 [''] (含 1 個空元素),非空陣列!
// 判斷是否為空白輸入需額外檢查
$arr = explode(',', $str);
$arr = array_filter($arr); // 移除空值
explode() 不支援正則,需用 preg_split():
// 分割「逗號或分號加任意空白」
preg_split('/\s*[;,]\s*/', $str);
str_getcsv() 更完善 (支援引號、跳脫)explode('/', $path) → array_filter() 移除空段explode(',', $input) → 儲存陣列implode('/', $segments)strtok() 避免建立陣列開銷implode() 遠快於迴圈 .=