Как я могу ускорить мой PHP включает? - PullRequest
2 голосов
/ 28 апреля 2011

У меня есть однажды PHP-файл, который я включаю почти во все, что я называю.Этот один файл включает в себя несколько других файлов php, которые он включает.Причина, по которой я использую этот один файл для всех моих включений, заключается в том, что у меня есть различия в пути между моим разработчиком и рабочим сервером, и было бы хорошо, если бы я включил только один файл и знал, что у меня есть классы, которые мне нужны прямо здесь.

Есть ли какой-нибудь простой способ кешировать файл или что-то, чтобы ускорить загрузку?

Ответы [ 2 ]

3 голосов
/ 28 апреля 2011

Вы можете установить кэш кода операции для PHP

Кэш кода операции оптимизирует производительность, удаляя время компиляции PHP-скриптов, кэшируя скомпилированное состояние PHP-скриптов в RAM, и использует скомпилированную версию прямо из RAM. Это увеличит скорость генерации страницы. Это также означает, что ваши файлы будут включены только один раз.

2 голосов
/ 28 апреля 2011

Есть много способов справиться с различиями путей, которые не включают загрузку всего каждый раз. Например, вы можете определить константу и использовать ее в качестве префикса во всех операциях вашей файловой системы:

define('DOC_ROOT', '/var/www/foo');
require_once DOC_ROOT . '/lib/bar.php';

Или вы можете положиться на переменную DOCUMENT_ROOT вашей системы (если она установлена ​​и исправлена):

require_once $_SERVER['DOCUMENT_ROOT'] . '/lib/bar.php';

Или вы можете использовать автозагрузку класса . Или вы можете использовать include_path .

Кроме того, PHP всегда находит и парсит каждый файл с исходным кодом PHP, к которому вы его указали, каждый раз, когда вы запускаете скрипт. Вы можете сократить вторую часть, если установите кэш кода операции .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...