PHP imagecreatefrompng

#php #image-processing

#php #обработка изображений

Вопрос:

Я использую imagecreatefrompng в следующем коде. Любой код, который выполняется после вызова этого метода, не выполняется, и цикл завершается. Никаких ошибок не выдается в любое время. Если я закомментирую эту строку, цикл выполняется, и все изображения отображаются в html. У меня включен GD2, а также оболочки fopen. Я также могу попробовать .. перехватить весь блок, но ошибок не выдается. Я также пробовал подавлять ошибки с помощью «@», но это тоже не работает.

 <html>
<head><title>test</title></head>
<body>
<?php
$qs = $_GET['stack'];
$stack = explode(" ", $qs);
foreach ($stack as $filename)
{
?>
    <img src="../content/images/trays/<?php echo "$filename.png"; ?>" alt="" />
<?php
    $img = imagecreatefrompng("../content/images/trays/$filename.png");
    echo "works: $filename.png";
}
?>
</body>
</html>
  

php.ini_ ограничение памяти: 128 МБ

Комментарии:

1. Вы уверены, что ошибки выводятся в браузер? error_reporting(E_ALL); ini_set('display_errors','On');

2. Кроме того, что у вас memory_limit установлено в php.ini?

3. @brian_d вы правы, я не выводил ошибки в браузер. Исходя из asp.net мир, я предполагал, что это будет сделано без необходимости что-либо устанавливать.

Ответ №1:

Попробуйте проверить, можете ли вы открыть файл:

 $img = @imagecreatefrompng("../content/images/trays/$filename.png');
echo $img ? "Works: $filename.png" : "Could not open file to create PNG from" ;