如何在外部文件中使用 Symfony 的默认自动加载
How to use Symfony's default autoloading in an external file
出于调试和测试的目的,我在我的 Symfony 项目的顶层目录中创建了一个 "external" php 文件,并从命令行用 php 调用它。到目前为止我没有成功
在该外部文件中使用 Symfony 的默认自动加载。我依次尝试了以下每个文件的开头:
require 'app/autoload.php';
require 'vendor/autoload.php'
require 'composer/autoload_real.php'
但其中 none 有效:每次我尝试
$check=class_exists(AppBundle/Entity/User);
我的调试器告诉我 $check 设置为 false,所以 php 无法识别我的用户 class。执行此操作的正确方法是什么?
第一个要求就足够了(这是 Symfony 自动加载器)它会自己加载其他两个文件。
class_exists returns false 因为 class 还没有自动加载因此函数 returns 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!
出于调试和测试的目的,我在我的 Symfony 项目的顶层目录中创建了一个 "external" php 文件,并从命令行用 php 调用它。到目前为止我没有成功 在该外部文件中使用 Symfony 的默认自动加载。我依次尝试了以下每个文件的开头:
require 'app/autoload.php';
require 'vendor/autoload.php'
require 'composer/autoload_real.php'
但其中 none 有效:每次我尝试
$check=class_exists(AppBundle/Entity/User);
我的调试器告诉我 $check 设置为 false,所以 php 无法识别我的用户 class。执行此操作的正确方法是什么?
第一个要求就足够了(这是 Symfony 自动加载器)它会自己加载其他两个文件。
class_exists returns false 因为 class 还没有自动加载因此函数 returns 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!