RecursiveDirectoryIterator 给出异常
RecursiveDirectoryIterator gives exception
RecursiveDirectoryIterator 给出意外值异常
$path= WEB."sync_content/offer/";
$files = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($path),
RecursiveIteratorIterator::LEAVES_ONLY
);
foreach ($files as $name => $file) {
$fn=$file->getFilename();
if($fn!='.' && $fn!='..' && !is_dir($fn)) {
$filePath = $file->getRealPath();
$zip->addFile($filePath,$fn);
}
}
错误是:
fatal error
Uncaught exception 'UnexpectedValueException' with message 'RecursiveDirectoryIterator::__construct(http://localhost/base/sync_content/offer/): failed to open dir: not implemented in C:\xampp\htdocs\base\classes\campaigns.class.php 249
您不能为网页使用 RecursiveIteratorIterator。这只能应用于本地目录。 URL 不是目录,这就是它失败的原因。
您似乎正在使用 URL(“http://localhost/...”)访问本地存储,这对 RecursiveIteratorIterator 不起作用。您最好将 $path
设置为直接指向本地目录,例如 $path = "/full/path/to/base/sync_content/offer/"
.
您可以使用 try
catch
作为特定错误消息,在我的例子中是 permission issues
RecursiveDirectoryIterator 给出意外值异常
$path= WEB."sync_content/offer/";
$files = new RecursiveIteratorIterator(
new RecursiveDirectoryIterator($path),
RecursiveIteratorIterator::LEAVES_ONLY
);
foreach ($files as $name => $file) {
$fn=$file->getFilename();
if($fn!='.' && $fn!='..' && !is_dir($fn)) {
$filePath = $file->getRealPath();
$zip->addFile($filePath,$fn);
}
}
错误是:
fatal error Uncaught exception 'UnexpectedValueException' with message 'RecursiveDirectoryIterator::__construct(http://localhost/base/sync_content/offer/): failed to open dir: not implemented in C:\xampp\htdocs\base\classes\campaigns.class.php 249
您不能为网页使用 RecursiveIteratorIterator。这只能应用于本地目录。 URL 不是目录,这就是它失败的原因。
您似乎正在使用 URL(“http://localhost/...”)访问本地存储,这对 RecursiveIteratorIterator 不起作用。您最好将 $path
设置为直接指向本地目录,例如 $path = "/full/path/to/base/sync_content/offer/"
.
您可以使用 try
catch
作为特定错误消息,在我的例子中是 permission issues