PHP 的陣列可以作為列表使用,在使用時,應當遵循以下規範。
列表中的值的型別應當相同
$goodList = [
'a',
'b',
];
$badList = [
'a',
1,
];
忽略索引
// 好
foreach ($list as $element) {
}
// 不好:不需要暴露索引
foreach ($list as $index => $element) {
}
// 不好:不需要用到索引
for ($i = 0; $i < count($list); $i++) {
}
不要刪除列表,應當使用過濾器來得到一個新的列表
// 不好
$list = [1, 2, 3];
unset($list[1]);
在使用過濾器時,不應當根據索引來篩選
// 好
array_filter(
$list,
function (string $element): bool {
return strlen($element) > 2;
}
);
// 不好:使用了索引
array_filter(
$list,
function (int $index): bool {
return $index > 3;
},
ARRAY_FILTER_USE_KEY
);
// 不好:同時使用了索引和值
array_filter(
$list,
function (string $element, int $index): bool {
return $index > 3 || $element === 'Include';
},
ARRAY_FILTER_USE_BOTH
);
本作品採用《CC 協議》,轉載必須註明作者和本文連結