我在 PHP 中使用 list() 赋值,因此我可以一次将数组值分配给更多变量。
问题是我需要在之前对数组输入进行 trim() - 当然你可以在此之前或之后对数组执行 foreach - 但是有没有办法将 trim 转换为某种赋值过滤器 - 或者至少 trim内联数组(没有外部函数或 foreach)?
这个问题更像是一般性问题 - 你能为 list() 赋值添加一些过滤函数吗?
编辑:
对于那些正在使用 foreach 寻找“更简单”解决方案的人:
foreach($items as $k => $v) $item[$k] = trim($v);
list($var1,$var2,$var3,$var4) = $items;
最佳答案
无法为您提供比 array_map()
更简单的方法:
list($var1,$var2,$var3,$var4) = array_map('trim', $items);
这里的“技巧”是 array_map
会将函数应用于数组的每个元素,然后返回修改后的数组 - 然后 list
将使用它.
关于PHP list() 分配 - 在分配或任何其他功能之前修剪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18508316/