当前位置: 首页 > 知识库问答 >
问题:

列表文件夹ftp sort()要求参数1为数组

姬欣怡
2023-03-14

我的代码:

function listar_pastas($pasta) {

     $this->lista = ftp_nlist($this->conexao,$pasta);
     sort($this->lista);

       foreach ($this->lista as $objeto) {

         if($this->verificar_pasta($objeto)) {
          $pastas[] = $objeto;
         }

       }

       return  $pastas;

  }

Secund代码:

$ftp = new FTP();
$ftp->conectar("host");
$ftp->autenticar("user","pass");

$array_pastas = $ftp->listar_pastas(".");

foreach ($array_pastas as $pasta) {

if($pasta != "." && $pasta != "..") {

$total_musicas = $ftp->total_arquivos($pasta,"mp3");

echo '<option value="'.$pasta.'">'.$pasta.' ('.$total_musicas.')</option>';
}

}

返回错误:

[08-Aug-2014 06:29:55 UTC]PHP警告:sort()希望参数1是数组,布尔值在第44行的/home/cassiano/public_html/admin/inc/classe.ftp.PHP中给出[08-Aug-2014 06:29:55 UTC]PHP警告:为第46行的/home/cassiano/public_html/admin/inc/classe.ftp.PHP中的foreach()提供的参数无效[08-Aug-2014 06:29:55 UTC]PHP警告:为第153行的/home/cassiano/public_html/gerenciar-musicas.PHP中的foreach()提供的参数无效[08-Aug-2014 06:29:57 UTC]PHP警告:sort()希望参数1是数组,布尔值在第44行的/home/cassiano/public_html/admin/inc/classe.ftp.PHP中给出

ps:相同的代码在另一台服务器上工作!但是在我的新服务器上,我得到了这个错误。

共有1个答案

薛博艺
2023-03-14

你在假设一切正常。但是,你应该抓住错误。

例如:ftp_nlist在出错时返回FALSE:"在成功时返回指定目录中的文件名数组,在出错时返回FALSE。"。

您对该特定功能的理由应该是:

$this->lista = ftp_nlist($this->conexao,$pasta);

if ($this->lista !== FALSE) {
    sort($this->lista);

    foreach ($this->lista as $objeto) {

        if($this->verificar_pasta($objeto)) {
            $pastas[] = $objeto;
        }
    }

    return  $pastas;
}
else {
    echo 'Unable to list files in the given directory';
    die();
}

您应该捕获所有函数的错误。

 类似资料:
  • 我收到这些错误: 注意:未定义的变量:第11行的login.php链接 警告:mysqli_real_escape_string()要求参数1为mysqli,登录时为null。php第11行 注意:未定义变量:第18行login.php中的链接 警告:mysqli_query()期望参数1是mysqli,在login.php的第18行给出了null 警告:mysql_result() 期望参数 1

  • 获取错误“DataTables Warning:table ID=example-请求行1列1的未知参数”1“。有关此错误的详细信息,请参阅http://datatables.net/TN/4”当从ajax api调用加载数据时,从后端收到的json如下所示 要填充表数据的HTML div标记片段如下所示。 下面是我正在执行的ajax调用,在success函数中尝试从json填充数据

  • 在这种情况下,我的查询工作正常,我已经在mysql上对它们进行了测试。 首先,我有一个自定义查询函数,在MySQLDatabase类中如下所示 然后我有一个类叫用户使用MYSQL类 最后,我以这种方式调用index.php中的方法 以下是一些事实:1。-当我插入数据库中存在的id值时,会出现此警告 警告:mysqli_fetch_array()要求参数1为给定数组的mysqli_结果 2.-当我插

  • 我想连接到一个名为ranch的数据库(使用xampp),并在数据库中插入一些表单数据。浏览器将显示错误: 警告:mysqli_error()期望参数1为mysqli,字符串在第38行的C:\xampp\htdocs\project ect1\register.php中给出 错误:无法执行插入到child_parent('子名','子姓','年龄','性别','姓名','姓氏','地址','tk',

  • 嘿,你们能帮我解决这个问题吗,因为我搞不清楚,这里是错误。 节目: 希望你们能尽快找到答案!另外,我重复这个问题,因为我迫不及待地想再问一个问题,但谢谢你帮我解决这个问题!

  • 问题内容: 我已升级到Xcode 7,并且使用Alamofire来管理API调用,但出现此错误: ‘闭包参数列表的上下文类型需要1个参数,但指定了4个参数’ 对于以下代码: 错误是指以下行: 我是Swift闭包的新手,不知道是否必须嵌套值才能使其有效。 非常感谢您的帮助。 问题答案: 该闭包采用类型为Response 的单个参数,因此您的代码应更像这样。