微擎學習1一一入口文件index.php

require './framework/bootstrap.inc.php';

$host = $_SERVER['HTTP_HOST'];
if (!empty($host)) {
	$bindhost = pdo_fetch("SELECT * FROM ".tablename('site_multi')." WHERE bindhost = :bindhost", array(':bindhost' => $host));
	if (!empty($bindhost)) {
		header("Location: ". $_W['siteroot'] . 'app/index.php?i='.$bindhost['uniacid'].'&t='.$bindhost['id']);
		exit;
	}
	
}
if($_W['os'] == 'mobile' && (!empty($_GPC['i']) || !empty($_SERVER['QUERY_STRING']))) {
	header('Location: ./app/index.php?' . $_SERVER['QUERY_STRING']);
} else {
	header('Location: ./web/index.php?' . (!empty($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : 'c=account&a=display'));
}

1.  加載框架初始化文件

 主要工作:

  • 定義系統常量 :  IN_IA、STARTIME 、 IA_ROOT、TIMESTAMP...
  • 定義全局變量  : $_W $_GPC 
  • 加載框架配置 :$configfile = IA_ROOT. "/data/config.php"   ,並賦值$_W
  • 檢測是否安裝:if(!file_exists($configfile)) ==> install.php
  • 加載常量:  version.inc.php 版本常量 、 const.inc.php 業務常量
  • 引入加載類,調用加載函數load() 加載 控制器|模型|類庫
  • 輸入過濾: $_GET 、 $_POST 、 $_COOKIE、file_get_contents("php://input");
  • 加載系統業務設置參數:setting_load ( 對應表 core_settings),與上面第三點 框架配置 合併
  • 開啓和關閉調試模式
  • MVC參數獲取
  • $controller = $_GPC['c'];
    $action = $_GPC['a'];
    $do = $_GPC['do'];

    詳細在下一篇介紹

2. 域名綁定

當你想 將一個公衆號\微站 綁定一個域名  ,則需要 在 site_multi 表 關聯 域名和公衆號\微站,最最最重要的一步:別忘記將需要綁定域名解析到服務器

3. 根據用戶瀏覽器(UserAgent)判斷是手機訪問 還是 PC訪問

手機訪問 : /app/index.php

PC訪問: /web/index.php

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章