Как мне получить файл php для правильного чтения этих изображений? - PullRequest
2 голосов
/ 19 апреля 2019

Я создал это, чтобы получить размер нескольких изображений, которые у меня есть в каталоге ....

$image = file_get_contents("$fileLocation");
$source = imagecreatefromstring($image);

$width = imagesx($source);
$height = imagesy($source);
echo "   width : ", $width, " $nbsp; height : ", $height, 

Когда он добирается до изображения с именем, в имени которого есть пробел,это выдает ошибку ....

Предупреждение: imagecreatefromstring (): данные не в распознанном формате в /setupdb.php в строке 23

Предупреждение: imagesx ()ожидает, что параметр 1 будет ресурсом, логическое значение задано в /setupdb.php в строке 25

Предупреждение: imagesy () ожидает, что параметр 1 будет ресурсом, логическое значение задано в /setupdb.php в строке 26

Что мне нужно добавить, чтобы лучше их читать?

1 Ответ

1 голос
/ 19 апреля 2019

Ошибка не в пробелах в имени файла, а в нераспознанных форматах изображений.Имена файлов с пробелами для поддерживаемых форматов изображений будут работать без ошибок и предупреждений ( За исключением случаев, когда вы неправильно читаете их и вводите в переменную $fileLocation, но эта часть отсутствует в вашем коде! ).Вы можете проверить поддерживаемые форматы изображений вашей установки php, запустив var_dump(gd_info());.

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

$image = file_get_contents("$fileLocation");
$source = imagecreatefromstring($image);

if ($source){
    $width = imagesx($source);
    $height = imagesy($source);
    echo "width : " . $width . " height : ". $height;
} else {
    echo $fileLocation . " is not a recognized image format";
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...