Symfony2 - 正在加载类

时间:2015-02-17 14:18:05

标签: php symfony

我在加载课程时遇到问题。有人建议使用Autoloader,但我不认为这在我的情况下是必要的,因为我需要的类与需要它的类在同一个Bundle中。反正我还不完全了解自动加载器。

所以我有一个班级

<?php

    namespace Nick\AlertBundle\Service;

    class ApiService
    {
        public function AddFlightsAction($alert){
            parseResponseData();
        }

        public function parseResponseData()
        {
            var_dump("Test");
        }
    }

所以它是一个基本的类,没什么特别的(我删除了很多函数来减少代码)。这是我需要使用的课程。

现在,我有一个倾听者。

<?php

namespace Nick\AlertBundle\EventListener;

use Doctrine\ORM\Event\LifecycleEventArgs;
use Nick\AlertBundle\Entity\AvailabilityAlert;
use Nick\AlertBundle\Service\ApiService;

class AvailabilityAlertListener
{

    public function postPersist(LifecycleEventArgs $args)
    {
        $entity = $args->getEntity();
        if ($entity instanceof AvailabilityAlert) {
            $uapi = new ApiService();
            $uapi->AddFlightsAction($entity);
        }
    }

}

如果我删除addFlightsAction中的内容并改为执行var_dump,则可行。如果我保持它是如何(addFlightsAction调用另一个函数与var_dump)然后我得到错误

  

尝试从命名空间调用函数parseResponseData   Nick \ AlertBundle \ Service(500内部服务器错误)

为什么会这样?

1 个答案:

答案 0 :(得分:1)

我认为这不是装货问题。

更改

public function AddFlightsAction($alert){
    parseResponseData();
}

public function AddFlightsAction($alert){
    $this->parseResponseData();
}