В PHP, использующем GD или imagemagick, как я могу загрузить фотографию от URL, я хочу создать функцию, которую я могу передать в нескольких параметрах и загрузить изображение, я могу в настоящее время загружать большое изображение, изменять размер его меньший, затем изменять размер еще некоторых миниатюр от него и сохранять все в там местоположения из 1 изображения, но я хотел бы добавить способность получить изображение от URL и затем выполнить мой код его, чтобы изменить размер и сделать ползунки.
Я использовал бы завихрение или что-то еще, какой-либо пример или идеи будут значительно цениться
$image = @ImageCreateFromString(@file_get_contents($imageURL));
if (is_resource($image) === true)
{
// image is valid, do your magic here
}
else
{
// not a valid image, show error
}
@
в обеих функциях для предотвращения ошибок PHP, если URL не является корректным изображением.
$img = '';
$fp = fopen($url, 'rb');
if($fp) {
while($buf = fread($fp, 1024)) {
$img .= $buf;
}
}
fclose($fp);
// предполагая, что url fopen-обертки включены
.В зависимости от вашей конфигурации PHP, fopen может напрямую разрешать или нет: http://php.net/manual/en/function.fopen.php
Или же вы можете открыть сокет (http://php.net/manual/en/book.sockets.php) и написать / прочитать HTTP (http://www.faqs.org/rfcs/rfc2616.html) напрямую. Я бы не стал использовать curl, если вы ОЧЕНЬ не осторожны с разрешениями (особенно с исполнением), или не можете гарантировать, что никто из злоумышленников не получит доступ к инструменту, так как вы фактически откроете потенциальный способ атаки (ну, строго говоря, вы уже открыли, но есть несколько различных способов, которыми вы можете злоупотребить)
.