【发布时间】:2014-09-18 08:43:20
【问题描述】:
我正在尝试使用array_walk 为数组中的每个元素运行一个函数并尝试捕获,以便我可以判断是否有任何元素没有成功运行该函数。
一旦所有元素都运行完该函数,我需要用一个完整的回调来响应。
在我下面的代码中,complete json_ecnode 每次都在运行,而不是在最后运行。我究竟做错了什么?这也是最有效的方法吗?
$products = array('shirt','skirt','jumper','lingerie','makeup','top','trousers','coats');
$i = 0;
function createProducts(&$item, $key){
try {
// try something
}
catch(Exception $e) {
// error
}
$i++;
if($i > count($products)) { json_encode('complete'); }
}
array_walk($products, 'createProducts');
【问题讨论】:
-
如果你激活错误报告,你会看到你的问题:变量范围。阅读stackoverflow.com/a/16959577/476。但是你在这里尝试做的事情从前到后似乎非常奇怪。