• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:windows環境でxamppのphpでunixパス設定)

Windows環境でxamppのphpでunixパス設定

このQ&Aのポイント
  • phpソース内でinclude(/www/aaa/test.php);がエラーになる問題が発生しています。
  • Windows環境ではUnixのパス(/)は理解できないため、パスを修正しても同じエラーが発生します。
  • phpの設定やapacheの設定を変更せずにWindows環境でxamppを使用する方法はあるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • wp_
  • ベストアンサー率54% (132/242)
回答No.1

>include(\www\aaa\test.php); 予測ですが、 include("\www\aaa\test.php"); こう書いてたりしませんでしょうか。 PHPに限らずですが、ダブルクウォートに括られた文字列は「\」でエスケープされます。 上記場合ですと\w,\a,\tがそれで一文字と判別されます。 Warning: include( est est.php) となるのは\tがタブ文字と判別されてるからでしょう。 解決策としては include('\www\aaa\test.php'); とするか、 include("\\www\\aaa\\test.php"); と\自体をエスケープすればよいです。

go2guige
質問者

お礼

そうですね。エスケープされていたんですね。 ありがとうございました! そもそも論で申し訳ございませんが、私の質問中で >WindowsではUnixのパス(/は最も上位のフォルダからのパス)は理解出来ないと知りまして これに錯誤がありました。 include のパス区切り文字は / でも \ でもどちらでも問題なく動くようです。あと、今回のミスは単純なapacheの設定とDirectoryの配置ミスでした。

その他の回答 (1)

  • tany180sx
  • ベストアンサー率63% (239/379)
回答No.2

相対パスで読み込むようにしておくか、 __FILE__ などを利用して、ベースのディレクトリを定義しておけば楽かと。 define('BASE_DIR', dirname(__FILE__) . '/'); include(BASE_DIR . 'test.php');

関連するQ&A