Получить высоту и ширину изображения как целочисленные значения? - PullRequest
90 голосов
/ 01 февраля 2010

Я пытался использовать функцию PHP getimagesize , но мне не удалось извлечь ширину и высоту изображения как целочисленное значение.

Как мне этого добиться?

Ответы [ 6 ]

182 голосов
/ 01 февраля 2010

Попробуйте так:

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

Убедитесь, что:

  1. Вы указали правильный путь к изображению там
  2. Изображение имеет доступ для чтения
  3. Chmod image dir to 755

Также попробуйте добавить префикс пути к $_SERVER[DOCUMENT_ROOT], это иногда помогает, когда вы не можете прочитать файлы

58 голосов
/ 01 февраля 2010
list($width, $height) = getimagesize($filename)

Или,

$data = getimagesize($filename);
$width = $data[0];
$height = $data[1];
13 голосов
/ 01 февраля 2010

getimagesize () возвращает массив, содержащий свойства изображения.

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

чтобы получить ширину и высоту или

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

чтобы получить больше информации.

6 голосов
/ 01 февраля 2010

Как это:

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;
6 голосов
/ 01 февраля 2010

PHP getimagesize() возвращает массив данных. Первые два элемента в массиве - это два элемента, которые вас интересуют: ширина и высота. Чтобы получить их, вы просто запросите первые два индекса в возвращенном массиве:

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

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

Для получения дополнительной информации см. документацию .

3 голосов
/ 18 декабря 2013

getimagesize('image.jpg') функция работает, только если allow_url_fopen установлен на 1 или включен внутри файла php.ini на сервере, если он не включен, следует использовать ini_set('allow_url_fopen',1); поверх файла, в котором используется функция getimagesize ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...