0

私がやろうとしているのは、 $ftp_user_name のグローバル変数をセットアップして、関数内に配置できるようにすることです。これにより、ループが情報を実行している間、ftp 接続の最後に preg_match が正しく行われ、ファイルのリストが出力されます。探している。

function is_txt($file) {
    global $ftp_user_name;
    return preg_match('/backup-[0-9]+\.[0-9]+\.[0-9]+_[0-9]{2}-[0-9]{2}-[0-9]{2}_'.$ftp_user_name.'.tar.gz/', $file) > 0;
}

while($row = mysql_fetch_array($query)) {

    $ftp_dir = $row['ftpdir'];

    // main display loop

    if (empty($row['ftphost'])){

        $ftp_server = $row['domain'];
        $ftp_user_name = $row['cpuser'];
        $ftp_user_pass = $row['cppass'];

    }
    else
    {
        $ftp_server = $row['ftphost'];
        $ftp_user_name = $row['ftpuser'];
        $ftp_user_pass = $row['ftppass'];
    }
}
4

1 に答える 1

1

これが私が提案するものです。グローバルを使用する必要はなく、パラメーターとして渡すだけです:

function is_txt($file,$user_name) {
    return preg_match('/backup-[0-9]+\.[0-9]+\.[0-9]+_[0-9]{2}-[0-9]{2}-[0-9]{2}_'.$user_name.'.tar.gz/', $file) > 0;
}

while($row = mysql_fetch_array($query)) {
    ...
    if (is_txt($file, $ftp_user_name)){
       // your code here
    }
    ...
}
于 2013-01-02T02:18:41.923 に答える