我得到以下信息
Notice: Use of undefined constant ARRAY_FILTER_USE_BOTH - assumed 'ARRAY_FILTER_USE_BOTH' in C:\projects\yada.php on line 88
Warning: array_filter() expects at most 2 parameters, 3 given in C:\projects\yada.php on line 88
Notice: Use of undefined constant ARRAY_FILTER_USE_BOTH - assumed 'ARRAY_FILTER_USE_BOTH' in C:\projects\yada.php on line 91
Warning: array_filter() expects at most 2 parameters, 3 given in C:\projects\yada.php on line 91
代码如下
$unregistered_team_names = array_filter($data, function ($v, $k) {
return strpos($k, 'unregistered_user_name_') !== false;
}, ARRAY_FILTER_USE_BOTH);
$unregistered_team_emails = array_filter($data, function ($v, $k) {
return strpos($k, 'unregistered_user_email_') !== false;
}, ARRAY_FILTER_USE_BOTH);
根据此处提供的文档,代码似乎有效 - http://php.net/manual/en/function.array-filter.php
永远不会调用回调。
最佳答案
根据 changelog array_filter
手册部分:
5.6.0 Added optional
flag
parameter and constantsARRAY_FILTER_USE_KEY
andARRAY_FILTER_USE_BOTH
所以,答案是:您的 php 版本低于5.6
。
关于php - 使用 array_filter 时意外的 php 通知和警告,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37225852/