私は簡単に私のdevのマシンと共有ホスト上で自分のページをテストできるようにするには、次のコードを使用しています:なぜinclude_path内のバックスラッシュがマングルされるのですか?
$include_path_afrihost = "../php/Services/facebook/php-graph-sdk-5.0.0/src/Facebook";
$include_path_dev = __DIR__."\sdk\facebook\php-graph-sdk-5.0.0\src\Facebook";
ini_set("include_path", $include_path_afrihost . PATH_SEPARATOR . $include_path_dev);
require_once "Facebook.php";
私がしようとすると、コードを実行すると、私は次の例外を取得:
をrequire_once():オープンに失敗しました 'Facebook.php' (include_path = '../php/Services/facebook/php-graph-sdk-5.0.0/src/Facebook; C:\ Dev \ PHP \プロジェクト\メッセンジャー\コード\ FacebookClient \ sdkacebook \ php-graph-sdk-5.0.0 \ src \ Facebook ')
"\ FacebookClient \ sdkacebook \"を含むdevのインクルードパスにはバックスラッシュと 'facebook'の 'f'がないことに注意してください。 Windowsファイルエクスプローラのアドレスバーからパスを直接コピーし、他のすべてのバックスラッシュは問題ありません。
私は1つの行を変更し、例えば、面白いバックスラッシュを二重にする場合:
$include_path_dev = __DIR__."\sdk\\facebook\php-graph-sdk-5.0.0\src\Facebook";
を、コードが正常に動作します。
どのOSをお使いですか? –
Windows 10. Duh、私stopidです。これはPHPのことではなく、Windowsのことです。 PHPはパスに渡します。 – ProfK