<?php
$arch_filename = "myzipx.zip";
$dest_dir = "./dest";
if (!is_dir($dest_dir)) {
if (!mkdir($dest_dir, 0755, true))
die("failed to make directory $dest_dir\n");
}
$zip = new ZipArchive;
if (!$zip->open($arch_filename))
die("failed to open $arch_filename");
for ($i = 0; $i < $zip->numFiles; ++$i) {
$path = $zip->getNameIndex($i);
$ext = pathinfo($path, PATHINFO_EXTENSION);
if (!preg_match('/(?:pdf)/i', $ext))
continue;
$dest_basename = pathinfo($path, PATHINFO_BASENAME);
echo $path, PHP_EOL;
copy("$path", "$dest_dir/{$dest_basename}");
}
$zip->close();
?>
发生了一件奇怪的事情,因为这段代码只工作了 15 分钟,现在抛出警告
(!)警告:复制(myzipx/x/x.pdf):无法打开流:第 21 行的 C:\wamp64\www\zip_ex\x\zip_img.php 中没有这样的文件或目录
但该文件存在并回显正确的文件名。不明白似乎是什么问题..任何帮助表示赞赏。
MMMHUHU
尚方宝剑之说