返回介绍

16.6.2 公共文件的使用

发布于 2025-01-30 22:11:38 字数 3595 浏览 0 评论 0 收藏 0

网站公共文件 /common/common.php

在 PHP 文件的顶部,使用 include 方式加载 common/common.php 文件,即可使用配置文件中定义的常量和函数库中的所有函数,并且使其校验过程在当前页面中生效。

网站公共文件的作用:

设置 PHP 的错误级别、网页字符集;
用于校验站点是否已经安装;
加载 config 中的所有文件、及 helpers 中的所有文件;
初始化 SESSION 和网站的公共变量;
网站的开启或关闭状态;
校验禁止访问的 IP 地址;
获取主导航的相关数据;

公共文件包含关系

代码详解

<?php

error_reporting(E_ALL & ~E_NOTICE);
header('content-type:text/html; charset=utf-8;');

//项目安装
if(!file_exists('install.lock'))
{
  header('location:install/index.php');
  exit;
}

/**
 * 加载文件
 */
include 'config/database.php'; //加载数据库配置文件
include 'config/config.php'; //加载站点基础配置文件
include 'helpers/mytpl.php'; //加载模板函数文件
include 'helpers/mysql.php'; //加载数据库操作函数文件
include 'helpers/user.php'; //加载数据库操作函数文件
include 'helpers/func.php'; //加载公共函数文件
include 'helpers/img.php'; //加载图片处理函数文件
include 'helpers/fileupload.php'; //加载文件上传函数文件
include 'helpers/code.php'; //加载图片验证码函数文件
include 'helpers/page.php'; //加载分页函数文件
$keyWords = include 'helpers/keywords.php'; //加载热搜关键词文件

session_start();            //启动 SESSION

//初始化变量
$web_name = WEB_NAME;
$web_btm = WEB_BTM;
$web_url = WEB_URL;
$web_icp = WEB_ICP;
$web_close = WEB_ISCLOSE;
$web_reg = WEB_REG;
$domain_resource = DOMAIN_RESOURCE;

//获取当前页面地址
$fileName = explode('/',$_SERVER["PHP_SELF"]);
$thispage = array_pop($fileName);

//网站关闭,管理员可以登录
if(empty($_POST['loginsubmit']))
{
  if($web_close && !$_COOKIE['udertype'] && $thispage!='logout.php')
  {
    echo $web_close.'---'.$_COOKIE['udertype'].'---'.$thispage;
    include 'close.php';
    exit;
  }
}

//禁止 IP
$Uip = ip2long($_SERVER['REMOTE_ADDR']);
$ip = dbSelect('closeip','*','ip='.$Uip.'','id desc',1);
if ($ip)
{
  exit('本站不欢迎你,请离开!');
}

if ($_COOKIE['uid'])
{
  $GGUser = dbSelect('user', 'grade,picture', 'uid=' . $_COOKIE['uid'], '', 1);
  if ($GGUser)
  {
    $GGgrade = $GGUser[0]['grade'];
    $GGpicture = $GGUser[0]['picture'];
  }
}

//读取所有大版块信息,做导航
$headMenu = dbSelect('category','cid,classname','parentid=0 and ispass=1','orderby desc,cid desc');

基础配置 /config/config.php

包含以下配置项:

1 基础配置(时区|魔术转译)
2 静态资源
3 website
4 模版引擎
5 奖励

<?php

// 一
define('TIMEZONE', 'Asia/shanghai'); //时区
define('GPC', get_magic_quotes_gpc() ? 0 : 1); //魔术转译

// 二
define('DOMAIN_RESOURCE', 'http://funcbbs.yhsong.com/public'); //静态资源目录

// 三
define('WEB_NAME', 'PHP 学院'); //站点名称,将显示在浏览器窗口标题等位置
define('WEB_BTM', 'NoAlike'); //网站名称,将显示在页面底部的联系方式处
define('WEB_URL', 'http://www.phpxy.com/'); //网站 URL,将作为链接显示在页面底部
define('WEB_ICP', '京 ICP 备 89273 号'); //页面底部可以显示 ICP 备案信息
define('WEB_ISCLOSE', false); //true 暂时将站点关闭,其他人无法访问,但不影响管理员访问
define('WEB_REG', true); //true 开启注册功能

// 四
define('TPL_SKIN', 'theme/default'); //模版文件存放位置
define('TPL_CACHE', 'compiled'); //模版文件缓存位置

// 五
define('REWARD_LOGIN', 2); //每天首次登陆赠送 2 积分
define('REWARD_REG', 50); //注册赠送 50 积分
define('REWARD_T', 2); //发帖赠送 2 积分
define('REWARD_H', 1); //回帖赠送 1 积分

数据库连接配置 /config/database.php

网站安装过程中会重写该文件 (确保该文件具有可写权限) 的内容,无需手动修改配置。

<?php

define('DB_HOST','localhost');    //数据库连接地址(IP)
define('DB_USER','root');       //数据库登陆账号
define('DB_PASS','123456');     //数据库登陆账号对应的密码
define('DB_NAME','apple_bbs');    //数据库名称
define('DB_CHARSET','utf8');    //数据库字符集
define('DB_PREFIX','bbs_');     //数据表前缀

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文