Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/293.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 您请求了一项不存在的服务“;file.uploader";-Symfony3_Php - Fatal编程技术网

Php 您请求了一项不存在的服务“;file.uploader";-Symfony3

Php 您请求了一项不存在的服务“;file.uploader";-Symfony3,php,Php,我刚刚在symfony中创建了一项新服务: // AppBundle\Services\FileUploader.php <?php namespace AppBundle\Services; class FileUploader { private $imagesDir; private $videosDir; public function __construct($imagesDir, $videosDir) { $this->i

我刚刚在symfony中创建了一项新服务:

// AppBundle\Services\FileUploader.php

<?php

namespace AppBundle\Services;

class FileUploader {
    private $imagesDir;
    private $videosDir;

    public function __construct($imagesDir, $videosDir) {
        $this->imagesDir = $imagesDir;
        $this->videosDir = $videosDir;
    }

    public function upload($form) {
    ///...
    ///...
        }
        return $form;
    }
}
但是,当我尝试使用以下命令从控制器调用它时:

$uploadModel = $this->get('file.uploader');
我得到以下错误:

您请求了一个不存在的服务“file.uploader”

即使我已经在config.yml中指定了参数,并通过运行

php bin/console debug:container file.upload --show-arguments
我得到:

Service ID       file.upload
Class            AppBundle\Services\FileUploader

任何idea服务通常都保存在缓存中。 你试过清洗它吗

php app/console cache:clear --env=prod
php app/console cache:clear --env=dev

您应该将服务标记为
公共

file.uploader:
    class: AppBundle\Services\FileUploader
    public: true
    arguments:
        - '%images_directory%'
        - '%videos_directory%'

您是否设置了xdebug?我认为这是解决这个问题的最快方法。只需跟踪代码执行,看看为什么找不到服务。我一定会在下次查看,谢谢。
file.uploader:
    class: AppBundle\Services\FileUploader
    public: true
    arguments:
        - '%images_directory%'
        - '%videos_directory%'