如何在外部文件中使用Symfony的默认自动加载


How to use Symfony's default autoloading in an external file

出于调试和测试的目的,我在Symfony项目的top目录中创建了一个"外部"php文件,并从命令行使用php调用它。到目前为止我没有成功在该外部文件中使用Symfony的默认自动加载。我依次尝试了以下每个文件开头:

require 'app/autoload.php'; 
require 'vendor/autoload.php'
require 'composer/autoload_real.php'

但是它们都不起作用:每次我尝试类似的东西

$check=class_exists(AppBundle/Entity/User);

我的调试器告诉$check设置为 false,以便 PHP 无法识别我的 User 类。正确的方法是什么?

第一个要求就足够了(这是Symfony自动加载器),它自己加载其他两个文件。

class_exists返回 false,因为该类尚未自动加载,因此该函数返回 false。

require 'app/autoload.php'; // This autoloader loads also your vendors and composer
$user = new AppBundle/Entity/User(); // now the autoloader is called!
$check=class_exists(AppBundle/Entity/User); // the class is autoloaded so true!