一个很奇怪的现象,我在网上找了很多个站点所提供的phpzipV2.0,所提供的程序都是无法正确打包文件。研究了半天,终于发现其实是一个变量名写错的原因。我也试着在CSDN上下同样的这个phpzipV2.0,结果一样是有错误的
令人感到奇怪的是,对于如此细微的错误,怎么就没看到有人修正过?至少我在网上找到的很多个包里,都是如此
function dirTree($directory,$rootDir)
{
global $_SERVER,$dirInfo,$rootDir;
echo "<ul>\n";
$fileDir=$rootDir;
$myDir=dir($directory);
    while($file=$myDir->read()){
if(is_dir("$directory/$file") and $file!="." and $file!=".."){
$dirInfo[0]++;
$rootDir .="$file/";
//$this->file = "$rootDir/$file";
            //$zipingFileContent = trim($this->ds_fread());
$this -> addFile('', "$rootDir");
echo "<li><font color=red><b>$file</b></font></li>\n";
//if($file!="upface" and $file!="upfile" and $file!="upfile2" and $file!="bak" and $file!="tmp" and $file!="images")
//go on n's folders
$this->dirTree("$directory/$file",$rootDir);
}
        else{
if($file!="." and $file!=".."){
$dirInfo[1]++;
$fd = fopen ("$directory/$file", "r");
//上下文中根本就没有这个$filename的变量,要打开的文件也应该是这个:"$directory/$file"才对
$fileValue = fread ($fd, filesize ($filename));
fclose ($fd);
$this -> addFile($fileValue, "$fileDir$file");
echo "<li>$file</li>\n";
}
}
}
echo "</ul>\n";
$myDir->close();
}