准备基于dede做一个互联网应用型的网站。
以前没有学过PHP,前一段花了半个月的时间浏览了一下PHP语法。准备入手修改dede了,阅读代码是一个学习的过程。dede的代码写得很有条理,注释也很全,值得学习。
多的不说了,分享一下dede和PHP的学习过程。今天先读index.php文件,逐行解释。
[url=javascript:]
Copy code[/url]
if(!is_file(dirname(__FILE__)."/include/config_base.php")){
echo "\r\n";
echo "?如果你还没安装本程序,请运行 install/index.php 进入安装>>
";
echo " Power by DedeCms OX V5.1 GBK版 织梦内容管理系统";
exit();
}
is_file($filename)函数,PHP中用来检测$filename是否有效。
dirname(__FILE__)函数,用来解释__FILE__中的路径,注意这个路径是不包含文件的路径。
整段的功能是:如果配置文件config_base.php无效,则运行安装程序。
PS:安装程序就不管了,与后边的逻辑没关系。
[url=javascript:]Copy code[/url]
require_once(dirname(__FILE__)."/include/config_base.php");
require_once(dirname(__FILE__)."/include/inc_arcpart_view.php");
如果配置文件config_base.php有效,引用一下config_base.php和inc_arcpart_view.php两个文件,前者是个配置文件,后者是显示界面文件。
[url=javascript:]Copy code[/url]
$dsql = new DedeSql(-100); //DedeSql是DEDE的数据库操作类,在include/pub_db_mysql.php文件中定义,这个文件在inc_arcpart_view.php被引用。
$row =$dsql->GetOne("Select * From #@__homepageset "); //查询并返回一条数据,这个数据记录了默认首页的格式和地址
[size=4]$dsql->Close(); //关闭数据库
$row['templet'] = str_replace("{style}",$cfg_df_style,$row['templet']); //对当前得到的数据进行处理,str_replace函数完成字符串的替代功能,其三个形参依次为需要替代的字符串、替代字符串、需要查找的字符串
$pv = new PartView(); //生成主界面,这个类是inc_arcpart_view.php中定义的。
$pv->SetTemplet($cfg_basedir."/".$cfg_templets_dir."/".$row['templet']); //设定模板路径
$pv->Display(); //展示
$pv->Close(); //这里只是关闭了数据库,和c++中的close()不是一个概念
//ookk
?>