2017-01-23 6 views
0

私は現在、このような構造を持つ配列受け取る:私は500内部サーバーエラーが表示さprint_r($file[0]['originalName']);にしようとするとオブジェクト配列のフィールドを取得するには?

Array 
(
    [0] => Symfony\Component\HttpFoundation\File\UploadedFile Object 
     (
      [test:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 
      [originalName:Symfony\Component\HttpFoundation\File\UploadedFile:private] => apple-tv-ad 
.jpg 
      [mimeType:Symfony\Component\HttpFoundation\File\UploadedFile:private] => image/jpeg 
      [size:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 36555 
      [error:Symfony\Component\HttpFoundation\File\UploadedFile:private] => 0 
      [pathName:SplFileInfo:private] => /private/var/tmp/phpe6INuk 
      [fileName:SplFileInfo:private] => phpe6INuk 
     ) 

) 

を。私はAJAX呼び出しでファイルをアップロードしようとします。私のmediaUploadメソッドが呼び出されたら、この配列を通して受け取った適切な値を持つデータベースエントリを作成したいと思います。私はちょうどそれにアクセスする方法で立ち往生しています。どんな助けもありがとう。

ありがとうございます!

+0

'$ file [0] - > originalName;は' $ file [0] 'でアクセスする配列ではないため、オブジェクトであるためです。しかしそれはプライベートなのでアクセスできません。 – Nytrix

+0

同じエラー:(。非公開の場合は値を取得する方法はありませんか? –

+1

不可、不可不可視認性[here]に関するドキュメントを参照してください(http://php.net/manual/en/language.oop5。 visibility.php)。クラスを通してこの値にアクセスする関数がない限り、ドキュメントでも見ることができます – Nytrix

答えて

3

getClientOriginalName()メソッドを使用します。 (短い答えて申し訳ありませんが、それはほとんどすべてそこにあります。)

$name = $file[0]->getClientOriginalName(); 

にUploadedFileオブジェクトは、必要な情報のすべての異なる部分を取得するために使用できるさまざまなアクセサメソッドを持っています。それらはすべて私がリンクしているAPIドキュメントにあります。

関連する問題