Je ne suis pas sûr que ce soit ce que vous voulez. Compte tenu du dossier (où PHP a le pouvoir d'obtenir le contenu du dossier) URL et une URL que vous voulez écrire, cela copier tous les fichiers:
function copyFilesLocally($source, $target_folder, $index = 5000)
{
copyFiles(glob($source), $target_folder, $index);
}
function copyFiles(array $files, $target_folder, $index)
{
if(count($files) > $index)
{
foreach($files as $file)
{
copy($file, $target_folder . filename($file));
}
}
}
Si vous cherchez à un serveur distant, Essayez ceci:
function copyRemoteFiles($directory, $target_folder, $exclutionFunction, $index = 5000)
{
$dom = new DOMDocument();
$dom->loadHTML(file_get_contents($directory));
// This is a list of all links which is what is served up by Apache
// when listing a directory without an index.
$list = $dom->getElementsByTagName("a");
$images = array();
foreach($list as $item)
{
$curr = $item->attributes->getNamedItem("href")->nodeValue;
if($exclutionFunction($curr))
$images[] = "$directory/$curr";
}
copyFiles($images, $target_folder, $index);
}
function exclude_non_dots($curr)
{
return strpos($curr, ".") != FALSE;
}
copyRemoteFiles("http://example.com", "/var/www/images", "exclude_non_dots");
Donc l'URL juste le répertoire répertorie les URLs à un dossier et vous voulez obtenir tous les fichiers d'image de cela? Ai-je raison de penser cela? – Malachi
Est-ce que votre client vous a donné une liste d'URL pour chaque image ou est-ce une page HTML qui contient toutes les images ou quelques pages HTML? –