prestashop代码分析之config.inc.php
2013-06-07 08:28
399 查看
第一步先打开index.php,可以看到引入了3个文件:config/config.inc.php,header.php,footer.php。
最重要的就是config/config.inc.php了,打开看看。
@ini_set('display_errors','off');
@ini_set('upload_max_filesize','100M');
@ini_set('default_charset','utf-8');
//这些部分修改了php.ini里的一些默认设置
header('Content-Type:
text/html; charset=utf-8');
//强调是utf8的编码
function __autoload($className) {
if
(!class_exists($className,
false)) require_once(dirname(__FILE__).'/../classes/'.$className.'.php');
}
//很神奇的自动载入函数,不知道的童鞋看看手册,其实很简单
if
(!file_exists(dirname(__FILE__).'/settings.inc.php')) {
$dir
=
((is_dir($_SERVER['REQUEST_URI'])
OR substr($_SERVER['REQUEST_URI'],
-1)
==
'/') ?
$_SERVER['REQUEST_URI']
:
dirname($_SERVER['REQUEST_URI']).'/');
if(!file_exists(dirname(__FILE__).'/../install'))die('Error:
\'install\' directory is missing');Tools::redirect('install',
$dir);
}
include(dirname(__FILE__).'/settings.inc.php');
//如果没有settings.inc.php,就开始安装进程
if
(!isset($_SERVER['REQUEST_URI'])
OR empty($_SERVER['REQUEST_URI']))
{
$_SERVER['REQUEST_URI']
=
$_SERVER['SCRIPT_NAME'];
if
(isset($_SERVER['QUERY_STRING'])
AND !empty($_SERVER['QUERY_STRING']))$_SERVER['REQUEST_URI']
.=
'?'.$_SERVER['QUERY_STRING'];
}
//有些web服务器会没有这个REQUEST_URI,所以要处理一下
$currentDir
=
dirname(__FILE__);//这个目录,是config目录,因为__FILE__是当前文件
这下面就是定义常量的了。有些童鞋要问了,为什么不定义成变量呢?一是这些内容不需要改动,二是在smarty中,可以使用$smarty.const.xxx来直接调用常量。
Configuration::loadConfiguration();//prestashop把所有的配置都存在一个表里面
Language::loadLanguages();//载入语言Tax::loadTaxZones();//税,国内就很少有这样的设置
$defaultCountry
=
new Country(intval(Configuration::get('PS_COUNTRY_DEFAULT')));//读取地区id,设置
$timezone
= Tools::getTimezones(Configuration::get('PS_TIMEZONE'));//设定时区
if
(function_exists('date_default_timezone_set'))
date_default_timezone_set($timezone);//如果是php5,有date_default_timezone_set函数,则设定时区
最重要的就是config/config.inc.php了,打开看看。
@ini_set('display_errors','off');
@ini_set('upload_max_filesize','100M');
@ini_set('default_charset','utf-8');
//这些部分修改了php.ini里的一些默认设置
header('Content-Type:
text/html; charset=utf-8');
//强调是utf8的编码
function __autoload($className) {
if
(!class_exists($className,
false)) require_once(dirname(__FILE__).'/../classes/'.$className.'.php');
}
//很神奇的自动载入函数,不知道的童鞋看看手册,其实很简单
if
(!file_exists(dirname(__FILE__).'/settings.inc.php')) {
$dir
=
((is_dir($_SERVER['REQUEST_URI'])
OR substr($_SERVER['REQUEST_URI'],
-1)
==
'/') ?
$_SERVER['REQUEST_URI']
:
dirname($_SERVER['REQUEST_URI']).'/');
if(!file_exists(dirname(__FILE__).'/../install'))die('Error:
\'install\' directory is missing');Tools::redirect('install',
$dir);
}
include(dirname(__FILE__).'/settings.inc.php');
//如果没有settings.inc.php,就开始安装进程
if
(!isset($_SERVER['REQUEST_URI'])
OR empty($_SERVER['REQUEST_URI']))
{
$_SERVER['REQUEST_URI']
=
$_SERVER['SCRIPT_NAME'];
if
(isset($_SERVER['QUERY_STRING'])
AND !empty($_SERVER['QUERY_STRING']))$_SERVER['REQUEST_URI']
.=
'?'.$_SERVER['QUERY_STRING'];
}
//有些web服务器会没有这个REQUEST_URI,所以要处理一下
$currentDir
=
dirname(__FILE__);//这个目录,是config目录,因为__FILE__是当前文件
这下面就是定义常量的了。有些童鞋要问了,为什么不定义成变量呢?一是这些内容不需要改动,二是在smarty中,可以使用$smarty.const.xxx来直接调用常量。
Configuration::loadConfiguration();//prestashop把所有的配置都存在一个表里面
Language::loadLanguages();//载入语言Tax::loadTaxZones();//税,国内就很少有这样的设置
$defaultCountry
=
new Country(intval(Configuration::get('PS_COUNTRY_DEFAULT')));//读取地区id,设置
$timezone
= Tools::getTimezones(Configuration::get('PS_TIMEZONE'));//设定时区
if
(function_exists('date_default_timezone_set'))
date_default_timezone_set($timezone);//如果是php5,有date_default_timezone_set函数,则设定时区
相关文章推荐
- [转]雪寒对PHPCMS的代码分析[command.inc.php]
- (转)phpcms2007代码分析(include/common.inc.php)
- dvwa 源码分析(三) --- config.inc.php分析
- prestashop代码分析之init.php
- 阅读DVWA系统代码之config.inc.php
- discuz代码分析一 从common.inc.php开始
- TCExam文件代码注释分析(shard/config/tcd_config.php)
- UCHome 网站首页index.php页面代码分析
- 基于Discuz security.inc.php代码的深入分析
- [ThinkPHP] 1、Config.php 配置项分析
- PHP config.php【完整代码】
- discuz xconvert 执行转换 config.inc.php 不可写,转换没法继续啊!!
- CodeIgniter配置之config.php用法实例分析
- 工具类GlobalConfigUtil代码实现过程分析
- 如何在html、php、jsp、asp等页面中添加分析代码(跟踪代码)
- php代码性能分析方法
- 分析PHP应用程序以查找、诊断和加速运行缓慢的代码
- UCHome2.0 do_register.php用户注册页面的代码分析
- phpmyadmin config.inc.php配置示例