[PHP-users 24357] includeにおける絶対パスと相対パスに関して

Jin Nakao @ lat nakaoj @ lat43n.com
2005年 2月 3日 (木) 22:24:47 JST


初めて質問させていただきます。

2つの環境で試した上で質問させていただきます。

環境1(localhost)
OS WinXP
Server Apache 2.0
PHP 4.3.10

環境2(レンタルサーバー)
OS Linux (の何かは不明)
Server Apache (バージョン不明)
PHP 4.3.8

上記環境でincludeを使用したスクリプトにエラーが出ます。
No such file or directory というエラーならわかるのですが、絶対パスにすると
「Fatal error: Call to undefined function: getinfo() in [Server]/b.php on 
line 4」
というエラーが出ます。

undefinedということはa.phpファイル自体は認識しているということなのですが。。。 


ログ解析を作ろうとしておりますので、異なった階層から(第三者にでも)簡単に設置できるように絶対パスを利用したいと考えております。

何か基本的なことかもしれないのですが、どうにも理由がわかりませんでしたので、ご助言をお願いしたいと思い質問させていただきます。

スクリプトは以下のとおりです。

a.php (階層の違う箇所 dir/a.php として設置)
<?
function GetInfo() {
 $data = $_SERVER["HTTP_USER_AGENT"];
 return $data;
}
?>

b.php
<?
// スクリプト1
include("../dir/a.php"); // 問題なく表示
// スクリプト2
include("[Server]/dir/a.php"); // 上記undefinedのエラー
echo GetInfo();
?>

よろしくお願いします。
nakaoj 



-- 
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.300 / Virus Database: 265.8.4 - Release Date: 2005/02/01



PHP-users メーリングリストの案内