у меня два класса. Я хочу запустить эти классы, включив Foo в класс Bar.
Хорошо работает без пространства имен.
<?php
class Foo
{
public static function test()
{
echo 'test';
}
}
app.php
Foo::test();
Бар класса
class Bar
{
public function run()
{
require('app.php');
}
}
$bar = new Bar();
$bar->run();
Когда я использую Пространство имен, оно не работает.
<?php
namespace example;
class Foo{
public static function test(){
echo 'test';
}
}
app.php
Foo::test();
Бар класса
namespace example;
use example\Foo;
class Bar{
public function run(){
Foo::test(); // its works
require('app.php'); // Fatal error: Uncaught Error: Class 'Foo' not found
}
}
$bar = new \example\Bar();
$bar->run();
Работает, когда я добавляю пространство имен в файл app.php.
app.php
use example\Foo;
Foo::test();
Есть ли способ запустить файл без добавления пространства имен?
Я писал по-английски, переводя. Я надеюсь, вы понимаете.