2012-03-09 13 views
0

../../../のようなパスをpath/path/pathに変換する方法はありますか?検索クラスを作成したいと思いますが、 path/の代わりに../形式を使用し、見つかったファイルの一覧を返します。は '../../'を 'path/path /'に変換します

preg_replace()を使用してこれに近づき、渡されたパスの$_SERVER['DOCUMENT_ROOT']に一致するまですべてを検索して置き換えました。しかし、唯一の問題はpath/path/pathです。

どのように私は../../../問題にアプローチしますか?

+0

あなたの検索パスに '../'必要がありますか?最善の方法は、それを使用できないようにすることではなく、エラーメッセージを表示することです。 –

答えて

0

ない尋ねるが、おそらくこれはあなたのために動作しますについて非常に明確:

$path = '../../..'; 
$path = str_replace(realpath($path) . '/', '', getcwd()); 
+0

問題は私ではなく、このスクリプトを使用したセキュリティアプローチが必要になります。私はそれをどうするべきか分かっていますが、他の人がスクリプトをアップロードしてサーバーの所有者が望んでいない出力を得るかもしれません – Eli

関連する問題