所以我有一个类,我有一个函数来解压缩一个文件数组。以下是代码的相关部分:
private function unzipFiles()
{
$this->fileNames = array("file1.zip");
$this->terminalPrint("Starting to unzip files...");
foreach($this->filenames as $file)
{
$this->terminalPrint("Unzipping $file");
..... //other operations
}
$this->terminalPrint("Finished uzipping files...");
我的问题是,当我调用此函数时,它会打印Starting to unzip files...
,但永远不会进入循环内部来打印Unzipping file1.zip
。它也不会异常退出或任何退出。它只是方便地跳过foreach loop
并打印Finished uzipping files...
我尝试过提供像array("file1.zip","file2.zip","file3.zip");
这样的多索引数组,但它不会进入循环内部!可能是一个非常小的东西,但我已经这么久了,我想也许我可以从一双新鲜的眼睛中寻求帮助......
谢谢!
答案 0 :(得分:2)
你有一个拼写错误 - $this->fileNames
vs $this->filenames
。 PHP区分大小写。
答案 1 :(得分:1)
您的循环中名为$this->filenames
的var尚未声明,您必须将其替换为$this->fileNames
:
private function unzipFiles()
{
$this->fileNames = array("file1.zip");
$this->terminalPrint("Starting to unzip files...");
foreach($this->fileNames as $file)
{
$this->terminalPrint("Unzipping $file");
..... //other operations
}
$this->terminalPrint("Finished uzipping files...");