1
好的,我有GOT在这里完全缺乏一些基本的东西。 我有一个非常简单的使用PHP的fopen函数,但由于某种原因,它不会打开文件,无论我做什么。PHP的fopen最终失败
关于这个奇怪的部分是,我在同一个脚本中的另一个函数中使用fopen,它的工作完美。我在两个函数中都使用了fclose。所以,我知道这不是一个流氓文件处理的问题。
我已经确认了文件的路径和目标文件的存在。
我以root身份在命令行运行脚本,所以我知道这不是apache原因。由于我以root身份运行脚本,我相当确信权限不是问题。
那么,我究竟在这里错过了什么?
function get_file_list() {
$file = '/home/site/tmp/return_files_list.txt';
$fp = fopen($file, 'r') or die("Could not open file: /home/site/tmp/return_files_list.txt for reading.\n");
$files_list = array();
while($line = fgets($fp)) {
$files_list[] = $line;
}
fclose($fp);
return $files_list;
}
function num_records_in_file($filename) {
$fp = fopen($filename, 'r'); # or die("Could not open file: $filename\n");
$counter = 0;
if ($fp) {
while (!feof($fp)) {
$line = fgets($fp);
$arr = explode('|', $line);
if ((($arr[0] != 'HDR' && $arr[0] != 'TRL') && $arr[0] != '')) {
++$counter;
continue;
}
}
}
fclose($fp);
return $counter;
}
根据要求,这里有两个功能。第二个函数传递给文件的绝对路径。这是我用来确认文件在那里,路径是正确的。
一些代码和更多的上下文吗? –
最新的错误,你有没有设置路径? –
确保文件的所有子目录都具有+ x权限集。 – nickb