2010-02-01 32 views

Trả lời

161

Hãy thử như thế này:

list($width, $height) = getimagesize('path_to_image'); 

Hãy chắc chắn rằng:

  1. Bạn chỉ định đường dẫn hình ảnh chính xác có
  2. Hình ảnh đã đọc truy cập
  3. Chmod ảnh dir 755

Đồng thời thử cố định đường dẫn tiền tố với $_SERVER[DOCUMENT_ROOT], điều này giúp đôi khi bạn không thể đọc các tập tin

+0

777 trên thư mục là không cần thiết. – poke

+0

@poke: bạn có thực sự chắc chắn 100% không? – Sarfraz

+3

Có. 777 có nghĩa là đọc, viết và thực hiện quyền cho chủ sở hữu, nhóm và tất cả. Bạn cần đọc và thực thi quyền truy cập vào một thư mục, nhưng bạn không cần viết đúng; và bạn cũng không cần quyền đó cho mọi người. 755 sẽ tốt cho mọi truy cập mà bạn không cần phải tạo tệp bên trong thư mục. – poke

50
list($width, $height) = getimagesize($filename) 

Hoặc,

$data = getimagesize($filename); 
$width = $data[0]; 
$height = $data[1]; 
+2

Thông tin thêm: http://php.net/manual/en/function.getimagesize.php – davethegr8

13

getimagesize() trả về một mảng chứa các thuộc tính hình ảnh.

list($width, $height) = getimagesize("path/to/image.jpg"); 

chỉ có được chiều rộng và chiều cao hoặc

list($width, $height, $type, $attr) 

để có được một số chi tiết thông tin.

+2

cảm ơn vì đã chỉ ra rằng chúng ta phải có PATH.:) – MEM

6

PHP getimagesize() trả về một mảng dữ liệu. Hai mục đầu tiên trong mảng là hai mục bạn quan tâm: chiều rộng và chiều cao. Để có được điều này, bạn sẽ chỉ đơn giản là yêu cầu hai chỉ số đầu tiên trong mảng trả về:

var $imagedata = getimagesize("someimage.jpg"); 

print "Image width is: " . $imagedata[0]; 
print "Image height is: " . $imagedata[1]; 

Để biết thêm thông tin, xem the documentation.

6

Như thế này:

imageCreateFromPNG($var); 
//I don't know where from you get your image, here it's in the png case 
// and then : 
list($width, $height) = getimagesize($image); 
echo $width; 
echo $height; 
+0

Không hoạt động: 'getimagesize() hy vọng tham số 1 là chuỗi, tài nguyên đã cho', hàm' getimagesize' mong đợi tên tệp – lopisan

3

getimagesize('image.jpg') chức năng chỉ hoạt động nếu allow_url_fopen được thiết lập để 1 hoặc Mở file php.ini bên trên máy chủ, nếu nó không được kích hoạt, ta nên sử dụng ini_set('allow_url_fopen',1); trên đầu tệp có hàm getimagesize() được sử dụng.

Các vấn đề liên quan