2013-10-03 2 views
2

Я уже некоторое время борюсь с этим. Скорее всего, это проблема новичков/опечаток, но я просто не могу ее найти.Symfony 2: класс не найден в контроллере

У меня есть этот класс ...

<?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: Error: Class 'PriceOrQuality\POQBundle\RegExConf\RegExConfIrma' not found in /Users/Rune/Sites/poq/src/PriceOrQuality/POQBundle/Controller/CrawlerController.php line 16

RegExConfIrma находится в папке/Пользователи/Rune/Sites/POQ/SRC/PriceOrQuality/POQBundle/RegExConf/RegExConfIrma

Я пытался отладки: * пространство имен * очистка кэша * изменение пространства имен

Но ничего не помогает.

Любая помощь очень ценится.

Спасибо!

+0

Вы проверили имя файла вашего RegExConfIrma.php? Убедитесь, что он точно соответствует имени класса, включая случай – Phil

+0

Привет, Phil - спасибо, я дважды проверил правописание и место – BispensGipsGebis

ответ

6

Проблема была крайне новичок.

Я забыл добавить .php после расширения моего файла, поскольку я использую Netbeans, где логотип показан как файл php, но без соответствующего расширения.

Так что для кого-либо еще найти этот пост с той же проблемой:

  1. Убедитесь, что вы используете правильное пространство имен
  2. Убедитесь, что Вы или usethe класс
  3. Убедитесь в правильности написания класса
  4. Убедитесь, что имя файла пишется точно так же, как класс
  5. Убедитесь, что вы добавили .php после файла класса
Смежные вопросы