改变数组的值
我想在没有循环的情况下更改数组的值 -
示例代码:
<?php
//current array
$ids = array('1113_1', '1156_6', '1342_16', '1132_3', '1165_2');
//result should be looks like this
$ids = array('1113', '1156', '1342', '1132', '1165');
?>
是否可以在没有任何循环的情况下完成此操作?
I want to change the value of an array without loop-
Example code:
<?php
//current array
$ids = array('1113_1', '1156_6', '1342_16', '1132_3', '1165_2');
//result should be looks like this
$ids = array('1113', '1156', '1342', '1132', '1165');
?>
is it possible to do it without any loop?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
使用
array_map()
尝试一下:演示:http://codepad.org/iGJ3cJW2
Try this using
array_map()
:Demo: http://codepad.org/iGJ3cJW2
可能的?是的:
但是为什么在这种情况下要避免使用循环呢?
Possible? Yes:
But why do you want to avoid using a loop in this case?
array_map()
,但在内部它仍然使用循环。array_map()
, but internally it'd still be using a loop.您还可以使用 PHP 内置函数来过滤数组,而不是显示的字符串/数组函数解决方法:
这会将每个条目转换为整数,在这种情况下足以获得:
Instead of the shown string/array function workarounds, you can also just use a PHP built-in to filter the arrays:
This converts each entry into an integer, which is sufficient in this case to get: