簡體   English   中英

訪問PHP數組對象保護的屬性

[英]Accessing PHP Array Object Protected Property

我想在Symfony2中上傳多個文件。 我試圖訪問以下請求對象,但我無法獲取參數屬性。 如何逐個訪問文件以上傳它們。

我得到的錯誤:

致命錯誤:無法在第66行的/var/www/File/src/Webmuch/FileBundle/Entity/File.php中訪問受保護的屬性Symfony \\ Component \\ HttpFoundation \\ FileBag :: $參數

請求對象:

Symfony\Component\HttpFoundation\FileBag Object
(
    [parameters:protected] => Array
        (
            [file] => Array
                (
                    [0] => Symfony\Component\HttpFoundation\File\UploadedFile Object
                        (
                            [test:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 
                            [originalName:Symfony\Component\HttpFoundation\File\UploadedFile:private] => FLB1.jpg
                            [mimeType:Symfony\Component\HttpFoundation\File\UploadedFile:private] => image/jpeg
                            [size:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 13584
                            [error:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 0
                            [pathName:SplFileInfo:private] => /tmp/phpzdaQgW
                            [fileName:SplFileInfo:private] => phpzdaQgW
                        )

                    [1] => Symfony\Component\HttpFoundation\File\UploadedFile Object
                        (
                            [test:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 
                            [originalName:Symfony\Component\HttpFoundation\File\UploadedFile:private] => FLB2.gif
                            [mimeType:Symfony\Component\HttpFoundation\File\UploadedFile:private] => image/gif
                            [size:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 5193
                            [error:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 0
                            [pathName:SplFileInfo:private] => /tmp/phpNUXho7
                            [fileName:SplFileInfo:private] => phpNUXho7
                        )

                )

        )

)

請幫我弄清楚這個對象訪問。 此外,如果有人有更好的方法來上傳Symfony2中的文件。

要訪問這些文件,您可以執行類似的操作

// retrieves an instance of UploadedFile
$request->files->get('file');

我想你正試圖直接進入該物業。 您必須使用現有的getter和setter 1

這應該返回文件名:

// retrieves an instance of UploadedFile
$file = $request->files->get('file');
$file_name = $file->getClientOriginalName();

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM