我遇到了PHP 5.3.0版本中包含的glob://流封裝問題。我使用下面的PHP版本:PHP 5.3.1 glob://異常
PHP 5.3.1-0.dotdeb.1 with Suhosin-Patch (cli) (built: Dec 5 2009 20:08:29) Copyright (c) 1997-2009 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies
當我嘗試從PHP.net網站執行以下example:
<?php
// Loop over all *.php files in ext/spl/examples/ directory
// and print the filename and its size
$it = new DirectoryIterator("glob://*.php");
foreach($it as $f) {
printf("%s: %.1FK\n", $f->getFilename(), $f->getSize()/1024);
}
?>
Note that I remove the folder from the original example and left only the php extension
我出現以下消息PHP錯誤:
SplFileInfo::getSize(): stat failed for [first php file name].php
在谷歌搜索這個錯誤時,我發現有人有same problem一年前,但看起來像他們修復它。
所以...我的問題是:任何人都使用glob:// wrapper?難道我做錯了什麼?任何人都有同樣的問題?
注:我已經知道我可以做同樣在其他不同的方式,但我要測試的水珠://流包裝:)
在黑暗中拍攝:有沒有更詳細的錯誤?你可以把error_reporting轉到更高的水平嗎?應該有一些更多的信息,而不僅僅是「統計失敗」。也許是Suhosin阻止異常的流式封裝? – 2010-02-17 12:04:27
我忘了發表評論,我禁用Suhosin擴展名......但也許應用了一些代碼補丁。 如果我在控制檯執行它,我會得到以下輸出: PHP致命錯誤:Uncaught異常'RuntimeException'帶有消息'SplFileInfo :: getSize():stat失敗/00.php'/ home/pedro/public_html/glob.php:7 Stack trace: #0 /home/pedro/public_html/glob.php(7):SplFileInfo-> getSize() #1 {main} 拋出/ home/pedro/public_html/glob.php第7行 – 2010-02-17 12:12:40