Выдает вот это: Strict Standards: Only variables should be passed by reference on line 13 Не могу понять где константа. postfix не добавляется.
$postfix = '_my';
error_reporting(E_ALL);
$files = scandir($_SERVER['DOCUMENT_ROOT']);
echo '<pre>';
print_r($files);
array_walk($files = array_filter($files, function($file_name) {
return $file_name != '.' && $file_name != '..';
}), function(&$file_name) use($postfix) {
$file_name .= $postfix;
});
print_r($files);
Вот так работает, но сообщение о стандарте так же остается, как будто file_name как не переменная передается.
<?php
$postfix = '_my';
error_reporting(E_ALL);
$files = scandir($_SERVER['DOCUMENT_ROOT']);
echo '<pre>';
print_r($files);
array_walk($files = array_filter($files, function($file_name) {
return $file_name != '.' && $file_name != '..';
}), function(&$file_name, $key) use($postfix, &$files) {
$files[$key] .= $postfix;
});
print_r($files);
Давайте посмотрим на сигнатуру функции array_walk()
на оф.сайте :
array_walk ( array &$array , callable $callback [, mixed $userdata = NULL ] ) : bool
Первый аргумент передаётся функции по ссылке: array &$array (об этом говорит символ амперсанд "&", предваряющий переменную "$array"). В таких случаях нужно сперва получить значение в переменную:
$files = array_filter(...)
И только после - передавать переменную в функцию:
array_walk($files, function(){})
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Есть несколько проектов, взаимодействующих друг с другом по http api или console api или еще как-нибудь
Мне на картинку необходимо вставить текстовый watermark использую следующий код:
В ВК с помощью метода messagesgetConversationMembers можно получить список участников беседы и их статус в беседе в виде JSON