Привет всем! Помогите, пожалуйста, решить проблему! Пишу собственное ядро MVC. Месяц назад создал хелпер для подсчета скорости загрузки страницы. Теперь он мне стал не нужен, так сказать свою функцию выполнил. Удали код обращения к нему на главной странице и соответственно сам хелпер. Стали вылезать ошибки: Warning: include_once(/home/lookings/public_html/app/helpers/speedHelper.php): failed to open stream: No such file or directory...... Warning: session_start(): Cannot send session cache limiter - headers already sent ...... В чем может быть проблема?
А где вся ошибка? Там написано на какой строке не может подключить файл /home/lookings/public_html/app/helpers/speedHelper.php
Warning: include_once(/home/lookings/public_html/app/helpers/speedHelper.php): failed to open stream: No such file or directory in /home/lookings/public_html/app/core/load.php on line 19 Warning: include_once(): Failed opening '/home/lookings/public_html/app/helpers/speedHelper.php' for inclusion (include_path='.:/usr/lib/php:/usr/local/lib/php') in /home/lookings/public_html/app/core/load.php on line 19 А вот сам код load.php Код (Text): <?php //Load - загрузка классов помощников class Load { //construct public function __construct() { include_once(APP_PATH.'/helpers/helper.php'); } //функция для загрузки помощников public function helper($helper) { if(is_array($helper)) { foreach ($helper as $help) { include_once(APP_PATH.'/helpers/'.$help.'Helper.php'); } } else { include_once(APP_PATH.'/helpers/'.$helper.'Helper.php'); } } } Но там он вызывается через переменную.
Переводи ошибку если не понимаешь. В файле /home/lookings/public_html/app/core/load.php на 19 строке, ты пытаешься инклудить файл /home/lookings/public_html/app/helpers/speedHelper.php которого нет
При $helper = 'speed'; include_once(APP_PATH.'/helpers/'.$helper.'Helper.php'); или include_once(APP_PATH.'/helpers/'.$help.'Helper.php'); Ты понимаешь что переменная несёт значение? И с помощью конкатенации ты динамически создаёшь имя файла и его пытаешься загрузить?
Ты где-то его вызвал, и что в папке нет, тут не причём. Вот как найти ошибку http://phpfaq.ru/debug#debug Ещё через xdebug и аналоги можно попробовать. Ещё можно с помощью wingrep поискать speed в файлах.
Вот и я про это. Я сам его создал месяц назад, знаю место где вызывал (теперь там его нет). Больше я его нигде не вызывал, да и фреймворк у меня не такой большой, чтобы я потерял его вызов. Как-то в сессиях он прописываться может? Или еще у меня включена буферизация вывода. Может там копать?
Ну загрузи архивом код может кто-то посмотрит. Просто узнай откуда speed появился. Ссылку на отладку я дал.
написано же: load.php on line 19 значит так оно и есть, не сомневайся. Код (PHP): 19: include_once(APP_PATH.'/helpers/'.$helper.'Helper.php'); слово 'speed' прилетает через параметр метода. ищем фразу "helper('speed')" — нашел в man_controller.php Код (PHP): //constructor public function __construct() { parent::__construct(); $this->load->helper('html'); $this->load->helper('speed'); $this->view->setStyle('style'); }