『壹』 php上傳圖片時,如何exif_read_data獲取exif
php獲取
圖片的exif信息,php自帶一個exif_read_data函數可以用來讀取圖片的exif信息,代碼來自php手冊:
<?php
echo "test1.jpg:<br /> ";
$exif = exif_read_data('tests/test1.jpg', 'IFD0');
echo $exif===false ? "No header data found.<br /> " : "Image contains headers<br /> ";
$exif = exif_read_data('tests/test2.jpg', 0, true);
echo "test2.jpg:<br /> ";
foreach ($exif as $key => $section) {
foreach ($section as $name => $val) {
echo "$key.$name: $val<br /> ";
}
}
?>
輸出結果如下
test1.jpg:
Noheaderdatafound.
test2.jpg:
FILE.FileName:test2.jpg
FILE.FileDateTime:1017666176
FILE.FileSize:1240
FILE.FileType:2
FILE.SectionsFound:ANY_TAG,IFD0,THUMBNAIL,COMMENT
COMPUTED.html:
COMPUTED.Height:1
COMPUTED.Width:1
COMPUTED.IsColor:1
COMPUTED.ByteOrderMotorola:1
COMPUTED.UserComment:Exiftestimage.
COMPUTED.UserCommentEncoding:ASCII
COMPUTED.Copyright:Photo(c)M.Boerger,EditedbyM.Boerger.
COMPUTED.Copyright.Photographer:Photo(c)M.Boerger
COMPUTED.Copyright.Editor:EditedbyM.Boerger.
IFD0.Copyright:Photo(c)M.Boerger
IFD0.UserComment:ASCII
THUMBNAIL.JPEGInterchangeFormat:134
THUMBNAIL.JPEGInterchangeFormatLength:523
COMMENT.0:Comment#1.
COMMENT.1:Comment#2.
COMMENT.2:Comment#3end
THUMBNAIL.JPEGInterchangeFormat:134
THUMBNAIL.Thumbnail.Height:1
THUMBNAIL.Thumbnail.Height:1
『貳』 php 在多個上傳圖片時 怎麼獲取 要上傳的圖片寬高
分兩個部分,一個是「多個圖片」,一個是獲取圖片的寬、高。
第一個用循環做到,也就是用for、foreach之類的東西遍歷你從頁面中得到的圖片數組
下一步用getimagesize()函數獲得圖片的信息。
此函數在php手冊里有解釋:圖像生成與處理→GD→GD and image函數里。
此函數返回的結果如下:
返回一個具有四個單元的數組。索引 0 包含圖像寬度的像素值,索引 1 包含圖像高度的像素值。索引 2 是圖像類型的標記:1 = GIF,2 = JPG,3 = PNG,4 = SWF,5 = PSD,6 = BMP,7 = TIFF(intel byte order),8 = TIFF(motorola byte order),9 = JPC,10 = JP2,11 = JPX,12 = JB2,13 = SWC,14 = IFF,15 = WBMP,16 = XBM。這些標記與 PHP 4.3.0 新加的 IMAGETYPE 常量對應。索引 3 是文本字元串,內容為「height="yyy" width="xxx"」,可直接用於 IMG 標記。
『叄』 php中如何處理上傳圖片
是這樣的,現在瀏覽器安全性加強了,不能獲取到本地端的路徑
所以只能取得上傳到的文件名,你得手動定義一個上傳路徑,比如你設置一個 config.php 文件,在裡面定義一下你的上傳路徑,然後保存到資料庫裡面的時候保存這個路徑
$filename = get_filename();
move_uploaded_file($_FILES['file']['tmp_name'], $filename);
mysql_query('INSERT INTO ...'); // 此處代碼略
『肆』 php怎麼實現頭像上傳到客戶端
php根據APP的上傳方式來決定PHP端的獲取方式,多數都是表單式上傳。
$_FILES; file_get_contents('php://input')都可以。
還有的是先在客戶端讀取了文件內容,再base64編碼,再上傳。
比較簡單的大文件斷點上傳,其實就可以靠APP處理。
『伍』 php中上傳文件的方法有多少種
一、傳統的php寫的上傳類。
寫一個php的上傳類,這個方法用到的知識全部是php的,而且技術的難點也不多。
<form method="post" action="upload.php" enctype="multipart/form-data">
<table border=0 cellspacing=0 cellpadding=0 align=center width="100%">
<input type="hidden" name="MAX_FILE_SIZE" value="2000000">//隱藏域。這里name必須設置成MAX_FILE_SIZE,其值就是上傳文件的最大長度,單位是B,這里我限製成2M
<input name="file" type="file" value="瀏覽" >
< input type="submit" value="上傳" name="B1">
</table>
</form>
服務端利用php的$_FILES['file']['name']來獲取文件後綴名,具體的代碼自己查找資料看看,這里就不多說了。
總結;這個方法可以用來上傳小於2M的文件或者是圖片,基本的功能可以實現。
二、利用uploadify插件
這個是利用jQuery的上傳插件,上傳可以帶進度條,容易配置。
總結:可以上傳一些大文件,和圖片,而且帶進度條,可以多文件上傳,在WEB中會經常用。
三、利用網路的webupload
WebUploader 是由 Bai FEX 團隊開發的一款以 HTML5 為主,FLASH 為輔的現代文件上傳組件。在現代的瀏覽器裡面能充分發揮 HTML5 的優勢,同時又不摒棄主流IE瀏覽器,沿用原來的 FLASH 運行時,兼容 IE6+,iOS 6+, Android 4+。採用大文件分片並發上傳,極大的提高了文件上傳效率。
四、swfupload的插件
這是一個jquery的上傳插件,功能也非常強大,開發也比較容易,網上有很多的資料,可以自行查找。