подключения require_once phar

Статус
В этой теме нельзя размещать новые ответы.

usergeyv

Знаток
Регистрация
5 Июл 2013
Сообщения
152
Реакции
25
В директории public_html находится phar-файл, подключаю к любому файлу в той же директории способом
HTML:
require_once 'phar://yandex-php-library_master.phar/vendor/autoload.php';
Все отлично работает.
А как только к файлу в директории, например public_html/test, не работает.
PHP:
Warning: require_once(phar://yandex-php-library_master.phar/vendor/autoload.php): failed to open stream: phar error: invalid url or non-existent phar "phar://yandex-php-library_master.phar/vendor/autoload.php" in /home/____/public_html/__/__l.php on line 144

Fatal error: require_once(): Failed opening required 'phar://yandex-php-library_master.phar/vendor/autoload.php' (include_path='.:/opt/php-5.5/pear') in /home/____/public_html/___/___.php on line 144
Как его правильно подключать с корневой директории public_html?
 
А путь к файлу проверили?
PHP:
$file = 'path/to/file.phar';
if (!is_file($file)) {
  echo 'Path corrupted!';
} else {
  require_once($file);
}
Имхо, если Вы хотите положить библиотеку в подпапку.
Тогда надо подключать либо всю библиотеку целиком (Вы же дергаете оттуда один файл), либо использовать объектный вариант подключения (если всё-таки один файл).
Вот здесь с примерами можно почитать — Для просмотра ссылки Войди или Зарегистрируйся
 
Последнее редактирование:
Можно ещё вот так, с тремя слешами после phar: задать абсолютный путь к архиву от корня:
PHP:
require_once 'phar:///абсолютный_путь_от корня/yandex-php-library_master.phar/vendor/autoload.php';
 
А путь к файлу проверили?
PHP:
$file = 'path/to/file.phar';
if (!is_file($file)) {
  echo 'Path corrupted!';
} else {
  require_once($file);
}
Спс работает. Вот еще вопрос,а как подключить также такого вида:
PHP:
use Yandex\SafeBrowsing\SafeBrowsingClient;
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху