ThinkPHP3.1.3原始碼分析(三) common.php

程式碼修行者發表於2014-12-15

common.php 是 ThinkPHP 基礎函式庫 定義的常用的 函式,

特別的帶有ThinkPHP特點的  單字母函式 D(),U(),M(),C() .....

一、示例程式碼

1.獲取模版檔案 T函式

//獲取模版檔案 格式 專案://分組@主題/模組/操作
//function T($template='',$layer='')
$info   =   parse_url($template);
        
        $file   =   $info['host'].(isset($info['path'])?$info['path']:'');
        $group  =   isset($info['user'])?$info['user'].'/':(defined('GROUP_NAME')?GROUP_NAME.'/':'');
        $app    =   $info['scheme'];

非常巧妙的 使用parse_url 函式來構造模板檔案格式

2.過濾  I函式

 // 全域性引數過濾
array_walk_recursive($input,$_filter);

 $data   =   is_array($data)?array_map($filter,$data):$filter($data); // 引數過濾

$data   =   filter_var($data,is_int($filter)?$filter:filter_id($filter));

3.區分大小寫的檔案存在判斷 file_exists_case


二、值得說的程式設計小細節:

strip_whitespace() 函式返回已刪除 PHP 註釋以及空白字元的原始碼檔案。

array_change_key_case() 函式將陣列的所有的 KEY 都轉換為大寫或小寫。


相關文章