require_once at symfony



我现在做的事情与php + Symfony2框架,我有以下代码:

require_once("one_file.php");
require_once("another_file.php");

…等等。

问题是,如何"Symfonyze"这些不舒服的要求句子,然后,如何将这些文件包含在Symfony2包中?

我们考虑了两种可能性:

  1. 包含symfony的/vendors目录下的文件,或者
  2. 包括每个类作为一个服务。

如果这些类驻留在bundle中,那么你可以这样使用:假设你的bundle名为AcmeDemoBundle。把这个文件放到Acme/DemoBundle/Model/

目录下
  //one_file.php
   namespace Acme/DemoBundle/Model;
   class one_file {
   ...........
   }

在你的控制器或任何其他文件中使用这个文件:

这里为Acme/DemoBundle/Controller/UserController.php

   namespace Acme/DemoBundle/Controller   
   use Acme/DemoBundle/Model/one_file
    class UserController {
    public $one_file=new one_file();
    }

从php 5.3开始,引入了名称空间。php文档

中的名称空间及其用法

您可以遵循PSR-0标准来让自动加载程序处理此问题。参见https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md和http://getcomposer.org/doc/04-schema.md#psr-0。

或者你可以保持你的文件原样,并告诉composer每次都需要它们:http://getcomposer.org/doc/04-schema.md#files

你必须在你的acme文件夹中创建一个文件夹,比如lib将这些文件放到lib文件夹中然后使用下面的语句

use AcmeDemoBundlelibAbc; // its your class name 

您希望遵循这些其他答案,特别是经过批准的答案,但如果您使用的是带有大量PHP文件的第三方库,您可以使用require_once(__DIR__.'/path/to/file.php')作为快速修复。

相关内容

  • 没有找到相关文章

最新更新