Существует отличная статья на эту тему в IBM: http://www.ibm.com/developerworks/opensource/library/os-php-v521/
UPDATE
Исходная страница была снесена, на данный момент версия JP-прежнему существует https://www.ibm.com/developerworks/jp/opensource/library/os-php-v521/
Основные вынос образуют его что вы можете использовать memory_get_usage()
, чтобы узнать, сколько памяти занимает ваш скрипт:
// This is only an example, the numbers below will differ depending on your system
echo memory_get_usage() "\ n";. // 36640
$ A = str_repeat ("Hello", 4242);
echo memory_get_usage() "\ n";. // 57960
unset ($ a);
echo memory_get_usage() "\ n";. // 36744
Кроме того, вы можете проверить пиковое использование памяти вашего скрипта с помощью memory_get_peak_usage()
.
В качестве ответа на ваши вопросы: print_r()
- это представление данных, раздутых текстом и форматированием. Занимаемая память будет меньше числа символов print_r()
. Сколько зависит от данных. Вы должны проверить его, как в приведенном выше примере.
Независимо от того, какой результат вы получите, каждый пользователь будет выполнять сценарий, поэтому да - если 1000 пользователей запрашивают его одновременно, вам понадобится эта память.
WTF был тегом "vim" здесь? – ZyX