看别人php程序的时候,每个页面开头都会有这段代码,为什么要define定义一下,这段代码的意思又是什么呢?

define('ROOT_PATH',dirname(__FILE__));
include(ROOT_PATH."/inc/webconfig.php");
include(ROOT_PATH."/inc/sysinfo.php");
include(ROOT_PATH."/inc/functions.php");
include(ROOT_PATH."/inc/db_sql.php");

define('ROOT_PATH',dirname(__FILE__));
定义一个常量ROOT_PATH 值取当前路径的目录名,,比如你的这个php 文件是在D:/www/oursys/put.php,,,,取dirname(__FILE__)的值 就是D:/www/oursys
相当于define('ROOT_PATH','D:/www/oursys');
下面的include都是包含语句

include(ROOT_PATH."/inc/webconfig.php");
就相当于
include("D:/www/oursys/inc/webconfig.php");
当然如果这段代码是出现在不同的路径下面,,上面的路径是会跟着变的
如果当前文件是在E:/webhome/kyz/etc下面,,上面的路径也会变成这个追问

路径变的好处是什么?打个比方?

追答

比如你在本地windows上的路径是D:/www/tmp/
在linux服务器上的路径是/home/myship/www/tmp
这样定义的好处是,路径自动识别,,在本地路径就识别为D:/www/tmp/
传到服务器上就识别为/home/myship/www/tmp

这样在本地和服务器都会正确包含,,,不用修改任何代码

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-05-05
define()函数是定义一个常量,括号里面第一个参数'ROOT_PATH'就是这个常量的名称,第二个参数就是给第一个参数赋值的意思dirname()就是返回路径中的目录部分,括号里__FILE__是个魔术变量,所以dirname(__FILE__)就是返回当前文件的路径。不包含文件名
总的意思就是把当前文件的路径保存到常量ROOT_PATH中 以后要引用这个路径 直接用ROOT_PATH代替旧可以啦
第2个回答  2011-05-05
define('ROOT_PATH',dirname(__FILE__));//先定义 ROOT_PATH 这个常量,也就是根目录。dirname(__FILE__)这句是 定义为本文件的目录,__FILE__就是这个文件本身
include(ROOT_PATH."/inc/webconfig.php");//包含本目录下/inc/webconfig.php这个文件
include(ROOT_PATH."/inc/sysinfo.php");
include(ROOT_PATH."/inc/functions.php");
include(ROOT_PATH."/inc/db_sql.php");

//然后其余的都是包含文件了。包含进来就可以用那些文件里面的函数或者类什么的了。 定义常量以后用起来方便啊,修改也方便,只要改一下定义的地方就行了。
第3个回答  2011-05-05
这些是常量啊,配置文件,数据库连接,默认值等等,总之就是用来调用已经写好的函数,类等,是个很好的编程习惯,当然,如果你的程序不是很复杂就没必要了~
第4个回答  2011-05-06
<?
$movie_score=mysql_query("SELECT movie_score FROM movie");
$arr= mysql_fetch_array($movie_score);
function insert_sort($arr)
{
$count = count($arr);
for($i=1; $i<$count; $i++)
{
$tmp = $arr[$i];
$j = $i - 1;
while(($arr[$j]< $tmp)&&($j>=0)){
$arr[$j+1] = $arr[$j];
$arr[$j] = $tmp;
$j--;
}
}
return $arr;
}
insert_sort($arr);
$out_score=mysql_query("SELECT * FROM movie ");
$arr_score= mysql_fetch_array($out_score);
function out_name_and_score($arr_score)
{
for($i=0;$i<50;$i++)
{
if($arr_score["movie_score"]=$arr[$i])
echo $arr_score["movie_chname"];
echo " ".$arr_score["movie_score"];
echo "<br />";
}
}
out_name_and_score($arr_score);
?>
另外,团IDC网上有许多产品团购,便宜有口碑
相似回答