0

initialize.phpを学習して使用したいので、 index.phpのような単純な php ファイルを作成して、 hello.phpを呼び出すかどうかを確認しようとしましたが、Windows XP を使用してローカル ホストで問題が発生しました。

詳細は次のとおりです。

http://127.0.0.1/www/oop/shape2/index.php ファイルindex.php

<?php
    defined('DS') ? null : define('DS', '/');
    defined('SITE_ROOT') ? null :defined('SITE_ROOT', $_SERVER['DOCUMENT_ROOT']);
    defined('LIB_PATH') ? null : define('LIB_PATH', SITE_ROOT.DS.'includes');

    echo (LIB_PATH.DS.'hello.php');
    require_once(LIB_PATH.DS.'hello.php');
?>

出力は次のとおりです。

SITE_ROOT/includes/hello.php

http://127.0.0.1/www/oop/shape2/includes/hello.php ファイルhello.php

<?php
 echo ('hi');
 ?>

私がそれを実行すると、私は得ましたhi

Windows のローカル フォルダは次のとおりです: C:\Program Files\Zend\Apache2\htdocs\www\oop\shape2

私が問題を解決するシェルは何ですか。どうも

4

1 に答える 1

1

2行目で、変更する必要があります

defined('SITE_ROOT') ? null :defined('SITE_ROOT', $_SERVER['DOCUMENT_ROOT']);

defined('SITE_ROOT') ? null :define('SITE_ROOT', $_SERVER['DOCUMENT_ROOT']);

defined関数ではなく関数を呼び出していdefineました。つまり、実際に SITE_ROOT 定数を作成したことはありません。

于 2012-06-19T12:49:33.690 に答える