【问题标题】:Symfony 2: Class not found in ControllerSymfony 2:在控制器中找不到类
【发布时间】:2013-10-03 23:48:23
【问题描述】:

我已经为此苦苦挣扎了一段时间。这很可能是菜鸟/错字问题,但我就是找不到。

我有这门课……

<?php

namespace PriceOrQuality\POQBundle\RegExConf;

use PriceOrQuality\POQBundle\RegExConf\RegExConf;

class RegExConfIrma extends RegExConf {

    public function __construct() {
        $this->start_page = 'https://irma.dk';
        $this->startConnection();
        $this->getAllLinks();
    }

}

?>

我正试图从这个控制器加载。

<?php

// src/PriceOrQuality/POQBundle/Controller/CrawlerController.php;

namespace PriceOrQuality\POQBundle\Controller;

use PriceOrQuality\POQBundle\RegExConf\RegExConfIrma;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Monolog\Logger;
use Monolog\Handler\FirePHPHandler;

Class CrawlerController extends Controller {

    public function testAction($page) {
        if($page == 'irma') {
            $regex = new RegExConfIrma();

            return $this->render('PriceOrQualityBundle:Crawling:crawling_test.html.twig', array('links' => $regex->getLinks()));

        }
    }

}

?>

但是我得到了这个错误,而且我似乎找不到问题。

FatalErrorException:错误:在 /Users/Rune/Sites/poq/src/PriceOrQuality/POQBundle/Controller/CrawlerController.php 第 16 行中找不到类“PriceOrQuality\POQBundle\RegExConf\RegExConfIrma”

RegExConfIrma 位于 /Users/Rune/Sites/poq/src/PriceOrQuality/POQBundle/RegExConf/RegExConfIrma

我尝试调试: * 命名空间 * 清除缓存 * 改变命名空间

但没有任何帮助。

非常感谢任何帮助。

谢谢!

【问题讨论】:

  • 您检查过RegExConfIrma.php 文件的文件名吗?确保它与类名完全匹配,包括大小写
  • 嗨菲尔 - 谢谢,我已经仔细检查了拼写和位置

标签: php symfony


【解决方案1】:

问题非常菜鸟。

我忘记在文件扩展名后添加 .php,因为我使用 Netbeans,其中显示的徽标是 php 文件,但没有正确的扩展名。

所以对于其他发现此帖子有同样问题的人:

  1. 确保使用正确的命名空间
  2. 确保包含或使用该类
  3. 确保类的拼写
  4. 确保 文件名的拼写与类完全相同
  5. 确保您已经 在类文件后添加.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-10-15
    • 1970-01-01
    • 1970-01-01
    • 2014-03-21
    • 1970-01-01
    • 1970-01-01
    • 2014-04-13
    • 2016-11-18
    相关资源
    最近更新 更多