5

私はそのような状況にあります。webrootディレクトリの外にある.wavファイルを削除したいのですが、このディレクトリのhttpd.conf(apache)エイリアスで「mp3」のように定義しました。ウェブルートなどからファイルをダウンロードできるので、これはうまく機能しています...しかし、私はそれを削除したいのですが、私はできません。私はPHPこのようなスクリプトを持っています=>

class Delete{
   public function del_directory_record($filename){
    if (unlink("/mp3/$filename")){
        return true;
    }
}
}

 $new = new Delete();
 $new->del_directory_record("file.wav");

php-errorsでは、「PHP警告=>そのようなファイルやディレクトリはありません」と表示されます。間違っていることに興味がありますか?

それでも動作しません...

私はC:\ server \ webrootにいます...そして私はC:\ server\mp3_filesにディレクトリmp3_filesを持っていますhttpd.confに私は書いています

Alias /mp3/ "C:/server/mp3_files/"
<Directory "C:/server/mp3_files/">
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.1
</Directory>
4

2 に答える 2

10

私はあなたがあなたに関連してこれをするつもりだったと思いますDOCUMENT_ROOT

class Delete {
   public function del_directory_record($filename) {
      return unlink($_SERVER['DOCUMENT_ROOT'] . "/mp3/$filename");
   }
}

$new = new Delete();
$new->del_directory_record("file.wav");

このスタンドアロン関数を使用するだけで、問題なく動作します。オブジェクトやクラスを作成する必要はありません。

function delete_directory_record($filename) {
   return unlink($_SERVER['DOCUMENT_ROOT'] . "/mp3/$filename");
}
于 2012-01-04T13:08:42.923 に答える
-3

試す

if (unlink("/mp3/".$filename)){
        return true;
    }

またはJacobRelkinがドキュメントルートで書いたもの

于 2012-01-04T13:08:54.173 に答える