私はphpを使用するのが初めてで、ここ数日間完全に困惑しています。$_FILES の複数の配列から抽出されたキーと値のペアを抽出して使用しようとしています。これはばかげてばかげた質問だと確信していますが、私は困惑しています。次のコードを実行すると、次の結果が得られます。
$exif = exif_read_data('/uploads/'.$file['name'], 0, true);
foreach($_FILES as $file){
echo $file['name'] . " :<br />\n";
foreach ($exif as $key => $section) {
foreach ($section as $name => $val) {
echo "<pre>This is \$name" . $name ."<br>";
echo "<pre>This is \$val" . $val ."<br>";
}
}
}
出力は次のとおりです。
アップロードされた画像
Image contains headers
Across the Field - LK.jpg :
FILE.FileName: Across the Field - LK.jpg
FILE.FileDateTime: 1361055472
FILE.FileSize: 294785
FILE.FileType: 2
FILE.MimeType: image/jpeg
FILE.SectionsFound: ANY_TAG, IFD0, THUMBNAIL, EXIF
COMPUTED.html: width="700" height="525"
COMPUTED.Height: 525
COMPUTED.Width: 700
COMPUTED.IsColor: 1
COMPUTED.ByteOrderMotorola: 0
COMPUTED.ApertureFNumber: f/9.0
COMPUTED.Copyright: Copyright 2010
IFD0.ImageWidth: 1024
IFD0.ImageLength: 768
IFD0.BitsPerSample: Array
IFD0.PhotometricInterpretation: 2
IFD0.Model: NIKON D300
IFD0.Orientation: 1
IFD0.SamplesPerPixel: 3
IFD0.XResolution: 720000/10000
IFD0.YResolution: 720000/10000
IFD0.ResolutionUnit: 2
IFD0.Software: Adobe Photoshop CS5 Windows
IFD0.DateTime: 2013:01:24 16:33:16
IFD0.Artist: lken
IFD0.Copyright: Copyright 2010
IFD0.Exif_IFD_Pointer: 316
THUMBNAIL.Compression: 6
THUMBNAIL.XResolution: 72/1
THUMBNAIL.YResolution: 72/1
THUMBNAIL.ResolutionUnit: 2
THUMBNAIL.JPEGInterchangeFormat: 642
THUMBNAIL.JPEGInterchangeFormatLength: 0
EXIF.ExposureTime: 1/100
EXIF.FNumber: 9/1
EXIF.ISOSpeedRatings: 400
EXIF.ExifVersion: 0221
EXIF.DateTimeOriginal: 2010:08:15 05:57:17
EXIF.DateTimeDigitized: 2010:08:15 05:57:17
EXIF.ShutterSpeedValue: 6643856/1000000
EXIF.ApertureValue: 633985/100000
EXIF.FocalLength: 1700/100
EXIF.ColorSpace: 65535
EXIF.ExifImageWidth: 700
EXIF.ExifImageLength: 525
簡潔にするために、2 番目の写真のデータは省略しました。
$_FILES の出力は次のとおりです。
Array
(
[userfile] => Array
(
[name] => Across the Field - LK.jpg
[type] => image/jpeg
[tmp_name] => C:\wamp\tmp\php223.tmp
[error] => 0
[size] => 294785
)
[userfile1] => Array
(
[name] => autumn-panorama - lk.jpg
[type] => image/jpeg
[tmp_name] => C:\wamp\tmp\php224.tmp
[error] => 0
[size] => 106349
)
)
私はすべてのサイトとすべての本を調べて、名前と値のペア ( IFD0.ImageWidth: 1024 や IFD0.ImageLength: 768 など) にアクセスする方法を見つけたので、アップロード サイズなどに制限を設定できます。
私は今非常に混乱しており、助けや指示をいただければ幸いです。リソースは特に高く評価されています。ありがとうございました。