-2

次のコードを使用しています。

     $un=@unlink('/var/www/vhosts/mtsbeta.com/httpdocs/beta/cache_files/cache.php');
    print_r($unlink);
    @session_destroy();
    //exit;
    $host1=$_SERVER['HTTP_HOST'];
    header("location:https://$host1/index.php?msg=2");

出口を使用した場合は機能しています。機能しない理由を教えてください。

4

1 に答える 1

9

投稿されたコードには多くの問題があります:

@unlink('/var/www/vhosts/mtsbeta.com/httpdocs/beta/cache_files/cache.php');

--他の人が提案したように@記号を削除すると、エラーメッセージがスローされます

print_r($unlink);

$unlink--コード内で呼び出される変数がありません。あなたが持っているのは$unまた、の戻り値は配列ではなく、またはのunlink()いずれかです。したがって、 を実行すると、1 (true/unlink 成功の場合) または何も返されない (false/unlink 失敗の場合) のいずれかになります。これによりさらに混乱する可能性があります。truefalseprint_r

header("location:https://$host1/index.php?msg=2");

-- あなたはすでにprint_r. ページに何かが出力されている場合、ヘッダーは機能しません

これはOPの質問に対する答えではないことはわかっていますが、5行の作業コードに少なくとも3つの望ましい変更があることを考慮して、リンク解除の問題に入る前にコードをもう少し調整してください。

于 2012-08-10T22:04:10.607 に答える