- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
<?php
// ...
$vars = get_class_vars($class_name);
if(is_array($vars)) {
foreach($vars as $var => $val) {
eval('$this->' . $var . ' = \'' . $val . '\';');
}
}
Нашли или выдавили из себя код, который нельзя назвать нормальным, на который без улыбки не взглянешь? Не торопитесь его удалять или рефакторить, — запостите его на говнокод.ру, посмеёмся вместе!
+160.4
<?php
// ...
$vars = get_class_vars($class_name);
if(is_array($vars)) {
foreach($vars as $var => $val) {
eval('$this->' . $var . ' = \'' . $val . '\';');
}
}
некакая UNI-CMS
это не самое худшее. что я там нашел ... в общем мрак... (
corristo 23.11.2009 02:49 # +1
nechin 23.11.2009 11:14 # 0
paranoid 23.11.2009 13:32 # 0
if(is_array($vars)) foreach($vars as $var => $val) - проверили - и гуд
а вот eval здесь явно лишний.
guest 24.11.2009 04:44 # +1
А вот что понапихано в свойства непонятно, может там какие формулы или структурки языковые?
DanxilLs 05.01.2010 08:56 # 0
guest 24.11.2009 12:53 # 0
В принципе, ничего быдлокодового не вижу, хотя проверка is_array() явно избыточна.
Но минусовать не буду.
nicolay-punin 24.11.2009 13:01 # 0
использование eval вообще зло... его лучше избегать... потому как каждый eval порождает новый процесс, а как следствие падает очень серьезно производительность скрипта...
про безопасность при использовании eval я вообще молчу... оно открывает новые просторы для разны php-иньекций...
про отладку таких вещей я вообще молчу...
guest 24.11.2009 17:24 # 0
interested 24.11.2009 19:06 # 0
Это скорее похоже на попытку реализовать некое отражение и построить тип во время исполнения. Для php4, где, кажется, рефлекций нет, это некоторый "выход" для тех, кто активно отражениями ранее пользовался в других языках.
Конечно, по такому короткому куску невозможно судить о "намерении"...
guest 01.12.2009 19:56 # +1
guest 05.12.2009 00:22 # 0