繁体   English   中英

如果 (in_array) 似乎没有看到数组中的内容,我有什么问题?

[英]if (in_array) doesn't seem to be seeing what's in the array, what have I got wrong?

我有一些 PHP 代码,用于在 CSV 文件的第一个“列”中搜索文件名,如果找到,则将其“删除”到“已删除”文件夹中。

我的代码一定有问题,因为if (in_array没有在数组中看到与$fileNoExtension相同的$fileNoExtension 。我在底部添加了一行进行检查,然后我得到了回声“ [ImportantFile] apparantly is not the same as [ImportantFile]???

我已经删除了从$thisFileWithExtension获取fileNoExtension的代码,这样fileNoExtension $thisFileWithExtension了。

foreach ($fileArray as $FileWithExtension) {
    if (file_exists('PHP/ManualRemove.csv')) {
        $csvManualDemos = fopen("PHP/ManualRemove.csv", "r");
        while ($csvRows = fgetcsv($csvManualRemove)) {
            if (in_array($fileNoExtension, $csvRows)) {
                echo "Found on manual remove list. Removed.";
                rename("$fileWithExtension", "Removed/$fileWithExtension");
                continue;
            } else
                echo "\n [$fileNoExtension] apparantly is not the same as [$csvRows[0]]???\n";
        }
    }
}

我确定我在某处有一些代码错误,但我无法解决! 非常感谢:D

为我的代码中的错字道歉,伙计们 - 他们是从编辑代码到这里发布的,而不是我实际代码中的错误。

我找到了我的问题的答案。 由于某种原因in_array缺少我的 CSV 的第一行。 我已将我的 CSV 保存为“ CSV UTF-8 ”,而不仅仅是导致此问题的“ CSV ”。

您的代码中存在区分大小写的问题。 你混淆了 $FileWithExtension 和 $fileWithExtension。 她们不一样。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM