我的代码:
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>';
}
}
返回erro:
[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警告:提供的参数无效 foreach()在/home/cassiano/public_html/admin/inc/classe.ftp.php上 第46行[08-Aug-2014 06:29:55 UTC] PHP警告:参数无效 为foreach()提供的 第153行/home/cassiano/public_html/gerenciar-musicas.php [08-Aug-2014 06:29:57 UTC] PHP警告:sort()期望参数1到 是数组,布尔值给出 第44行/home/cassiano/public_html/admin/inc/classe.ftp.php
Ps:相同的代码正在另一台服务器上运行! 但是在我的新服务器上,我收到了这个错误。
答案 0 :(得分:0)
你假设一切正常。但是,你应该抓住错误。
例如:ftp_nlist错误时返回FALSE:“Returns an array of filenames from the specified directory on success or FALSE on error.
”。
您对该特定功能的情况应为:
$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();
}
你应该抓住所有功能的错误。