gpt4 book ai didi

PHP readdir() : 3 is not a valid Directory resource

转载 作者:行者123 更新时间:2023-12-02 06:43:23 25 4
gpt4 key购买 nike

    <?php

function convert(){

//enable error reporting for debugging
error_reporting(E_ALL | E_STRICT);

//convert pdf's to html using payroll.sh script and
//pdftohtml command line tool
$program = "payroll.sh";
$toexec="sh /var/www/html/tmp/" . $program . " 2>&1";
$exec=shell_exec($toexec);

//display message from payroll.sh
//echo $exec;
//echo ('<br/>');

}

function process(){

$dir = '/var/www/html/tmp/converted';
//echo ('one');

if (is_dir($dir)) {
//echo ('two');
if ($dh = opendir($dir)) {
//echo ('three');
while (($file = readdir($dh)) !== false) {
//echo ('four');

if ($file != "." && $file != ".."){
echo 'opening file: ';
echo $file;
echo ("<br/>");
$fp = fopen('/var/www/html/tmp/converted/' . $file, 'r+');
$count = 0;

//while file is not at the EOF marker
while (!feof($fp))
{
$line = fgets($fp);

if($count==21)
{
$employeeID = substr($line,71,4);
echo 'employee ID: ';
echo $employeeID;
echo ('<br/>');
//echo ('six');
$count++;
}
else if($count==30)
{
$employeeDate = substr($line,71,10);
echo 'employee Date: ';
echo $employeeDate;
echo ('<br/>');
//echo ('seven');
$count++;
}
else
{
//echo ('eight');
//echo ('<br/>');
$count++;
}
}
fclose($fp);
closedir($dh);

}
}
}
}
}

convert();
process();
?>

我正在设置一个 php 脚本,它将采用 pdf 格式的工资单,将其转换为 html,然后在获取日期和员工 ID 后将其导入 Drupal。

代码似乎只处理目录中的第一个文件然后它给了我这个:

opening file: dd00000112_28_2010142011-1.html
employee ID: 9871
employee Date: 12/31/2010<p></p>

<p>Warning: readdir(): 3 is not a valid Directory resource in /var/www/html/pay.mistequaygroup.com/payroll.php on line 29
</p>

错误中的“3”真的让我很困惑,谷歌也帮不上什么忙。它可能是循环的第 3 次迭代吗? reddir() 正在扫描的目录中唯一的文件是等待处理的 .html 文件。有什么想法吗?

此外,我的代码看起来如何?我对进行任何真正的编程都是相当陌生的,而且我没有在工作中得到太多的投入。

最佳答案

看起来您在完成目录之前就关闭了目录。移动这一行:

closedir($dh);

在 while 循环之外:

while (($file = readdir($dh)) !== false) {
....
}
closedir($dh);

而不是这个:

while (($file = readdir($dh)) !== false) {
....
closedir($dh);
}

关于PHP readdir() : 3 is not a valid Directory resource,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4572241/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com