私はPHPをローカルで実行しています(Webサーバーはまったく関わっていません)。パス内のスペースを含むファイルにアクセスするのに問題があります。この後者の場合は、よく形成され、ファイル・スキームURIである空白を含むファイル名
$indexFile = "file:///Users/username/Documents/My‰20Folder/test.txt";
echo file_exists($indexFile);
AFAICT:
私の裸の骨の場合は
$indexFile = "file:///Users/username/Documents/My Folder/test.txt";
echo file_exists($indexFile);
かです。ファイルをそこにドラッグすると、ブラウザの場所フィールドに表示される内容とまったく同じです。
スペースを含まないURIは問題ありません。残念ながら、私は "My Folder"を "MyFolder"に変更する自由はないし、解決策を探したい。
urlencode、rawurlencode、escapeshellargを使ってみましたが、%20をバックスラッシュエスケープスペース"My\ Folder"
に置き換えようとしましたが、これは動作しません。私もgoogleとstackoverflowで狩りましたが、多くの話題がありますが、質問には答えられません。
スペースを含むパスを使って任意のファイル(ローカルホスト上)にアクセスするにはどうすればよいですか?
'ファイルを取り払う試してみてください。どちらの場合は、初めに//'とところで –
を何が起こるかを見ますそれらの作業と最悪の最悪の場合は、システムのPATHに "Users/username/Documents/My Folder /"を追加し、設定ファイルで名前( "test.txt")でファイルを参照してみてください。 – user980058
また、ブール値を出力するには 'echo'の代わりに' var_dump() 'を使うことをお勧めします。 –