【发布时间】:2022-07-30 14:31:24
【问题描述】:
认为我有一个这样的数组,
$code = ['PO/2022/0001', 'abc','xyz','PO2022/0001', 'XY/2022/0002','PO/2022/0232'];
那么,我想explode 使用/ 在数组值之上,如果explode 数组有3 个元素,那么我需要像这样创建一个新数组。
$prefixes = ['PO', 'XY','PO'];
我能知道什么是更好、更有效的方法吗?
这是我目前所拥有的:
$code = ['PO/2022/0001', 'abc','xyz','PO2022/0001', 'XY/2022/0002','PO/2022/0232'];
foreach ($code as $v) {
$nwCode = explode("/",$v);
if(count($nwCode) == 3) {
$nwAry[] = $newCode[0];
}
$nwCode = [];
}
echo '<pre>',print_r ($nwAry).'</pre>';
【问题讨论】:
-
仅供参考,您可以使用
count()检查explode结果长度。然后您可以使用if检查它是否包含3 个项目,最后array_push将结果存储到累加器或其他东西。好吧,如果你想放弃 foreach,你也可以尝试使用array_map。
标签: php arrays loops foreach explode