2013-06-18 3 views
24

Я пытаюсь «включить» скрипт php в один из моих просмотров (landing.blade.php).Включая файлы PHP с основанием Laravel

Сценарий в:

/laravel-master/public/assets/scripts/config.php 

При попытке включить этот код в представлении:

<?php include_once('/assets/scripts/config.php'); ?> 

Я получаю ошибку: include_once(/assets/scripts/config.php): failed to open stream: No such file or directory

Это на локальном хосте, используя MAMP , Я не уверен, есть ли другой набор правил, которые мне нужно использовать с Laravel 4, чтобы включить php-файл. Спасибо за помощь!

+0

'/ assets/scripts/config.php' означает, что он находится в корне вашей ОС. Используйте абсолютный путь или измените его на относительный. – djthoms

+0

Не могли бы вы рассказать об этом? Каким будет относительный путь? ../assets/scripts/config.php? – user1072337

+0

Часто возникает эта ошибка и для быстрого устранения неполадок выполните следующие действия: stackoverflow.com/a/36577021/2873507 –

ответ

38

Во-первых, на самом деле не рекомендуется хранить ваши файлы PHP в каталоге public, они должны храниться в папке app. Я предлагаю вам создать папку внутри app, что-то вроде includes и разместите там свои файлы. Затем включите его, сделайте следующее:

include(app_path().'/includes/config.php'); 

Хотя, так как это выглядит, как вы пытаетесь загрузить некоторые файлы конфигурации, я рекомендую вам также проверить свой путь Laravel по работе с конфигурациями. Например, если вы создали myapp.php файл в папке app/config, Laravel будет обрабатывать это автоматически для вас, до тех пор, как вы хотите иметь несколько пар ключ-значение, например:

<?php 

return array(
    'name'  => 'Raphael', 
    'gorgeous' => true 
); 

Вы могли бы получить эти значения, используя Config класс:

Config::get('myapp.name'); // Raphael 

Это лучшее решение, потому что вы можете также воспользоваться Laravel-х .

+0

Я пытаюсь загрузить этот файл конфигурации для входа в систему Facebook. Содержит appID, секрет и т. Д. Это вообще изменит ваш ответ? – user1072337

+0

Ну, если вы не можете изменить код, который будет использовать файл конфигурации, тогда он «недействителен» для использования «встроенного содержимого конфигурации Laravel», но остальное все еще считается. – rmobis

+0

Где я могу поместить: $ app = app(); включают ($ app ['path.app']. '/ Includes/config.php'); с моей стороны? – user1072337

Смежные вопросы