вложенный require_once с абсолютным путем не работает

У меня тройка вложенная require_once:

user@mybox:/tmp/foo $ cat bar.php
<?php
ini_set('display_errors', 1);
require_once 'foo3.php';

user@mybox:/tmp/foo $ cat foo3.php
<?php

require_once 'foo2.php';
echo "foo3" . PHP_EOL;

user@mybox:/tmp/foo $ cat foo2.php
<?php

require_once 'foo.php';
echo "foo2" . PHP_EOL;

user@mybox:/tmp/foo $ cat foo.php
<?php

require_once 'Mage.php';

echo "foo" . PHP_EOL;

user@mybox:/tmp/foo $ cat Mage.php
<?php

die('require once works' . PHP_EOL);

Это работает: при звонке php bar.php Я получаю вывод require once works,

Если я сейчас поменяю foo.php использовать абсолютный путь:

user@mybox:/tmp/foo $ cat foo.php
<?php

require_once '/tmp/foo/Mage.php';

echo "foo" . PHP_EOL;

Я получаю следующий вывод:

user@mybox:/tmp/foo $ php bar.php
foo
foo2
foo3

И включение последнего файла не работает.

Не вложенный require_once также работает:

user@mybox:/tmp/foo $ php foo.php
require once works

Это происходит только на некоторых машинах (с идентичной версией PHP PHP 5.3.3 (cli) (сборка: 6 августа 2014 г. 05:09:45)

Обновить

php foo2.php

тоже не работает

2

Решение

Мы обнаружили, что использование только абсолютных путей работает. Микс, кажется, проблема.

0

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector