Я не имею опыта в PHP, и я использую:
error_log("big array:" . print_r($bigArray, true));
чтобы посмотреть, что находится внутри большого массива, но похоже, что выход отключен, прежде чем я доберусь до интересного материала на выходе:
... [4] => Array ( [id] => 100039235 [start] => 11:00 [end] => 19:00 [punches] => Array ( [0] => Array ( [id] => 6319 [comment] =>
Ожидается ли это? Существуют ли другие способы или обходные пути для получения большего количества массива?
Если вы проверите параметры ошибки INI в PHP, вы заметите, что есть опция log_errors_max_len
:
Установите максимальную длину
log_errors
в байтах. Вerror_log
добавляется информация об источнике. По умолчанию 1024 и 0 позволяют вообще не применять максимальную длину . Эта длина применяется к зарегистрированным ошибкам, отображаемым ошибкам, а также к$php_errormsg
.Когда используется целое число, значение измеряется в байтах. Также могут использоваться сокращенные обозначения, как описано в этом FAQ.
Следовательно, если вы хотите использовать error_log
для вывода этих огромных сообщений, убедитесь, что вы изменили log_errors_max_len
на большое число (или 0
для неограниченной длины).
// Append to the start of your script ini_set('log_errors_max_len', 0);
Поскольку scrowler упоминает свой error_log, это ограничивает выход.
Ошибка_log будет регистрироваться в syslog по умолчанию и в вашем коде, длина которого ограничена установкой времени выполнения log_errors_max_len и по умолчанию 1024.
Дополнительную информацию об этих функциях и настройках см. Ниже:
http://php.net/manual/en/function.error-log.php http://php.net/manual/en/errorfunc.configuration.php#ini.log-errors-max-len
То, что вы, вероятно, хотите сделать, это просто вызвать print_r ($ bigArray), чтобы он выводил напрямую, или если вы хотите увидеть что-то немного более интересное в браузере
echo '<pre>' . print_r ($bigArray, TRUE) . '</pre>';