Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737 Форумы портала PHP.SU :: Число строк кода переваливает за 2000
Покинул форум
Сообщений всего: 28
Дата рег-ции: Сент. 2007
Помог: 0 раз(а)
Здравствуйте!
Пишется крупный пхп проект. Код уже получается длинный, и вдобавок известно, что будут добавляться все новые и новые страницы с нестандартным содержимым, так что код будет еще длиннее. Мало того, для новых страниц не создается отдельный файл .php, а они добавляются по следующему принципу:
index.php:
Структура, в общем, такая. Мне она очень понравилась. Развязывает руки во многом. Однако код pages.php получается уже очень длинным.
Вопрос:
1. Будет ли такой большой код одного файла сильно тормозить выполнение программы, если он еще разрастется (сейчас пока все ок)?
2. Будет ли быстрее работать программа, если чуть-чуть по-другому действовать?
index.php:
То есть для каждой страницы делать отдельный файл с определением ее класса, а потом динамически инклудить только нужный файл, не читая 3000 строк pages.php?
valenok
Отправлено: 26 Сентября, 2007 - 12:18:47
Здесь могла бы быть ваша реклама
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006 Откуда: Israel
Помог: 3 раз(а)
Если у вас за раз вызывается лишь один класс
тоесть action=1 тогда один класс а при action 2 другой
то обязательно выделите каждый класс в отдельный скрипт
и действуйте как вы в конце предложили.\n\n(Добавление)
1. Да
2. Да
----- Truly yours, Sasha.
obi-wan
Отправлено: 26 Сентября, 2007 - 12:57:38
Новичок
Покинул форум
Сообщений всего: 28
Дата рег-ции: Сент. 2007
Помог: 0 раз(а)
Спасибо. Я вот в чем сомневался. ПХП же интерпретирует, а не компилирует. Поэтому подумал, что можно гулять по строкам, куда скажут, а не читать и компилить 3000-строчный файл.
Значит, он все равно читает всё?
valenok
Отправлено: 26 Сентября, 2007 - 13:34:09
Здесь могла бы быть ваша реклама
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006 Откуда: Israel
Помог: 3 раз(а)
Вы встречали ошибку E_PARSE.
На размышления наводит?\n\n(Добавление)
да и в конце концов ему же как то надо знать к какой строке перейти
ты же пишешь $a = func($b); а не $a = gotoline(1740);
----- Truly yours, Sasha.
obi-wan
Отправлено: 27 Сентября, 2007 - 13:14:42
Новичок
Покинул форум
Сообщений всего: 28
Дата рег-ции: Сент. 2007
Помог: 0 раз(а)
Спасибо. Вопросов больше нет
obi-wan
Отправлено: 04 Октября, 2007 - 19:43:20
Новичок
Покинул форум
Сообщений всего: 28
Дата рег-ции: Сент. 2007
Помог: 0 раз(а)
Мысль.
Ошибка E_PARSE может возникать просто потому, что дошел пхп до какой-то строчки, отпарсить не может - вот и выдает. Дальше не читает, поэтому таких ошибок всегда не больше одной.
Вызов функций. Функции вызываются только после того, как их определение прочитано. Поэтому ничего "дальше" читать тоже по идее не надо.
valenok
Отправлено: 04 Октября, 2007 - 20:42:25
Здесь могла бы быть ваша реклама
Покинул форум
Сообщений всего: 4574
Дата рег-ции: Июль 2006 Откуда: Israel
Помог: 3 раз(а)
А значит ли это что парсер всё таки читает?
----- Truly yours, Sasha.
obi-wan
Отправлено: 05 Октября, 2007 - 11:20:27
Новичок
Покинул форум
Сообщений всего: 28
Дата рег-ции: Сент. 2007
Помог: 0 раз(а)
Само по себе не значит. Другое дело, что я взял и проверил.
Написал такой код:
Все гости форума могут просматривать этот раздел. Только зарегистрированные пользователи могут создавать новые темы в этом разделе. Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.