2016-05-14 3 views
1

Я получаю следующееНеожиданное PHP уведомление и предупреждение при использовании array_filter

Примечание: Использование неопределенной константы ARRAY_FILTER_USE_BOTH - предполагается 'ARRAY_FILTER_USE_BOTH' в C: \ Projects \ yada.php на линии 88

Предупреждение: array_filter() ожидает, что в большинстве 2 параметров, 3 приведен в C: \ Projects \ yada.php на линии 88

Примечания: Использование неопределенной константы ARRAY_FILTER_USE_BOTH - предполагается «ARRAY_FILTER_USE_ ОБА»в C: \ Projects \ yada.php на линии 91

Предупреждение: array_filter() ожидает, что в большинстве 2 параметров, 3 приведены в C: \ Projects \ yada.php на линии 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

функции обратного вызова никогда не будет вызываться.

+1

Прочтите журнал изменений http://php.net/manual/en/function.array-filter.php#refsect1-function.array-filter-changelog и проверьте свою версию php. –

ответ

7

Согласно changelog части array_filter руководства:

5.6.0 Добавлена ​​опциональная flag параметров и констант ARRAY_FILTER_USE_KEY и ARRAY_FILTER_USE_BOTH

Итак, ответ: Ваш PHP версия ниже, а не 5.6.

Смежные вопросы