PHP: использовать локальное изображение, если оно существует

У меня есть скрипт для локального кэширования изображений. Работает отлично;

<?
$image = file_get_contents("$bg");
$filename = basename($bg);
file_put_contents("images/$filename", $image);
?>
<img src="<? echo $bg; ?>"><br>

Тем не менее, я хочу, чтобы мой скрипт использовал локальное изображение в img Отметьте, если он уже загружен и присутствует в моей папке. Если изображение еще не загружено, сохраните внешнее изображение и затем используйте локальное изображение.

Другими словами; Проверьте, есть ли изображение в папке, если нет — загрузите его и отобразите локальный файл. Если он уже находится в папке, просто отобразите локальное изображение, не загружая его снова.

1

Решение

Вы можете проверить наличие файла с file_exists функция, пожалуйста, смотрите документацию:
http://php.net/manual/fr/function.file-exists.php

<?php
$filename = basename($bg);
if(!file_exists($filename))
{
$image = file_get_contents("$bg");
file_put_contents("images/$filename", $image);
}
?>
<img src="https://web-answers.ru/wp-content/uploads/2019/02/<?php print $filename?>"><br />
2

Другие решения

Ты можешь использовать file_exists():

<?php
$filename = basename($bg);
if(!file_exists("images/$filename")){
// we don't have it, Cache it first
$image = file_get_contents("$bg");
file_put_contents("images/$filename", $image);
}
?>

<img src="<? echo $bg; ?>"><br>
2

Ты можешь использовать file_exists Функция для проверки уже выходов или нет.

Попробуй пример

<?php
$filename = basename($bg);
if(!file_exists($filename))
{
$image = file_get_contents("$bg");
file_put_contents("images/$filename", $image);
}
?>
<img src="https://web-answers.ru/wp-content/uploads/2019/02/<?=$filename?>"><br>
1
По вопросам рекламы [email protected]