2010-09-01 3 views
0

Возможно ли установить ограничение памяти на переменную? (Это ограничение было бы бесполезным, если оно больше, чем memory_limit в php.ini.)Возможно ли установить ограничение памяти для переменной?

Я бы хотел, чтобы $ foo всегда был меньше, чем 1mb, но не заботился о размере других переменных.

ответ

3

Нет, невозможно наложить ограничение размера на переменные в PHP.

В зависимости от того, что вы хотите сделать, вы можете построить класс с setter function, который проверяет размер перед назначением значения переменной класса.

+0

+1 - это тот же совет, который я бы дал на основании вопроса –

1

Что такое $ foo в вашей ситуации? Если это строка, вы можете сделать это с ограничением символов. Если это число, вы можете проверить размер номера.

+0

Это простой XMLElement. – Cedric

0

Основываясь на идее проверки количества символов в строке: я могу иметь строковое представление $foo с, например, print_r($foo,true) и проверить количество полукокса.

if(strlen(print_r($foo,true))<10000){ 
    /*do something*/ 
}; 

(хотя это решение не использовать в качестве времени и энергоемких. И это действительно грубый способ проверить объем памяти, необходимый).