Здравствуйте. Не могу понять, почему не выводятся значения через цикл, хотя напрямую значения из массива выводятся.
$users = get_users();
$usr_id = array_map(function($q){
return get_the_author_meta('ID', $q->ID);}, $users);
}
for ($i = 0; $i <= 10; $i++) {
echo $usr_id[$i]; //таким образом почему то ничего не выводится
}
echo $usr_id[0]; //а так работает
Именно через цикл не получается сделать. Подскажите пожалуйста, в чем может проблема?
В массиве много значений, счет идет с 0. Если выводить вне цикла, к примеру echo $usr_id[3], то все выводится, а если в цикле, то не работает почему то.
ну, var_dump($usr_id) в цикл вставь. Я в таких ситуациях с подземными стуками фигачу вардампы через строчку, пока не пойму какого хрена где происходит.
сделайте print_r($usr_id); и пришлите сюда. А так же, попробуйте вместо $usr_id[$i] вставить к примеру echo "test"; . Если не будет выводиться тест, значит эта функция не выполняется.
при том, что если убрать строчку $usr_id = array_map(function($q){return get_the_author_meta('ID', $q->ID);}, $users);} из кода, то цикл может выводить к примеру echo 'test'; а с той строчкой даже обычный echo 'test'; не выводит.