Какво имаш предвид със "струва ли си"? Действително, ако четеш от файл, ще работи по-бавно, дори в пъти повече (от директно писане в променлива), заради достъпа до диска, но темплейт енджина би трябвало да го кешира при първото зареждане и после да няма вече file_get_contents. Кешира в следния смисъл: "прочита файла веднъж и генерира php код, който има като променлива съдържанието на файла, и при следващо зареждане директно вика php-то".но пък струва ли си да пускам пак file_get_contents за нещо, което потребителя така или иначе няма да пипа ?
За това реших така да е, иначе може, не е проблем...
Относно if-овете – хвани най-вътрешните блокове и ги изнеси във функция с описателно име. После хвани блока със следващите 1-2-3 вложени if-a и направи същото. Може да тръгнеш и от другата страна – да почнеш от най-външния if блок и else блок, да ги извадиш във функции, и после от новите функции да вадиш следващите части.Ам.. дай съвет, какво да ги правя тези иф-ове... ?
Обърни внимание, така изнесените функции дали имат нужда от параметри – чрез параметрите ясно ще си проличи коя функционалност от какво зависи.
В момента кодът е труден за четене, понеже, за да разбера какво прави custom_page функцията, трябва да изскролвам няколко екрана, за да видя на кой if, кой му е else-ът, и в двата случая какво правиш. Ако успееш да го сведеш до това, ще бъде много по-лесно:
PHP:
public function custom_page() {
if (strpos($_SERVER['REQUEST_URI'], '/pages/forgot_pw') !== false) {
if (isset($_GET["key"]) && isset($_GET["email"])) {
$this->reset_user_pass($_GET["email"]);
} else {
$this->display_reset_pass_screen();
}
}
}
(И по подобен начин да изглеждат вътрешните функции)
Може да се зачетеш тук: https://softwareengineering.stackex...9/how-would-you-refactor-nested-if-statements
Последно редактирано: