ホームページ > バックエンド開発 > PHPチュートリアル > CI フレームワークのソース コードの読み取り----------Lang.php_PHP チュートリアル

CI フレームワークのソース コードの読み取り----------Lang.php_PHP チュートリアル

WBOY
リリース: 2016-07-14 10:09:18
オリジナル
703 人が閲覧しました

[php]  

/** 
* コードイグナイター
*
* PHP 5.1.6 以降用のオープンソース アプリケーション開発フレームワーク
*
* @package CodeIgniter
* @author ExpressionEngine 開発チーム
* @copyright Copyright (c) 2008 - 2011, EllisLab, Inc.
* @license http://codeigniter.com/user_guide/license.html
* @link http://codeigniter.com
* @since バージョン 1.0
* @filesource
 */
// ----------------------------------------------- ------------------------
/**
* 語学クラス
* 公式ユーザーマニュアル: http://codeigniter.org.cn/user_guide/libraries/ language.html
* @パッケージCodeIgniter
* @subpackage ライブラリ
* @category 言語
* @author ExpressionEngine 開発チーム
* @link http://codeigniter.com/user_guide/libraries/ language.html
*/
クラス CI_Lang {
/**
* 翻訳リスト
* 言語パックリスト
* @var 配列
*/
var $ language = array();  
/**
* ロードされた言語ファイルのリスト
* ロードされている言語パックのリスト
* @var 配列
*/
var $is_loaded = array();  
/** 
* コンストラクター
*
* @access public
     */
関数 __construct()
{
log_message('debug', "言語クラスが初期化されました");  
}
// ----------------------------------------------- ---------------------
/**
* 言語ファイルをロードします
* 言語パックをロードします
* @アクセス公開
* @param はロードする言語ファイルの名前を混合します
ロードされる言語ファイル。
* @param string 言語 (英語など) 使用する言語
* @param bool return ロードされた翻訳の配列 言語パックの配列を直接返します
$ $ this-> is_loadedと$ this->言語を追加しないでください
* @param bool add suffix to $langfile ファイルにサフィックスを追加するかどうか
* @param string 言語ファイルを探すための代替パス 言語パック ファイルへのカスタム パス
* @return 混合
*/
functionload($langfile = '', $idiom = '', $return = FALSE, $add_suffix = TRUE, $alt_path = '')
{
// langfile 文件的.php 後缀去掉
$langfile = str_replace('.php', '', $langfile);  
// 判断不要不要追加後缀如果必要
// 将_lang. 去掉并再langfile后面追加_lang
if ($add_suffix == TRUE)
{
$langfile = str_replace('_lang.', '', $langfile).'_lang';
}
// .php サフィックスを langfile に追加します
$langfile .= '.php';
// 現在のファイルがロードされているかどうかを判断します
if (in_array($langfile, $this->is_loaded, TRUE))
戻る;
}
// 設定ファイルのデータを取得します
$config =& get_config();
を使用して
// 次に、$config から取得します
if ($idiom == '')
$deft_lang = ( ! isset($config['言語'])) '英語' : $config['言語'];
$idiom = ($deft_lang == '') '英語' : $deft_lang;
}
// 言語ファイルの場所を特定してロードします
using use using の の ウェイ アウト アウト アウト アウト アウト アウト オフ
if ($alt_path != '' && file_exists($alt_path.'言語/'.$idiom.'/'.$langfile))
include($alt_path.' language/'.$idiom.'/'.$langfile);
}
その他
// カスタム パスが見つからない場合は、get_instance()->load->get_package_paths(TRUE) を呼び出します
一緒に
// get_package_paths 関数はloader.phpにあります
$found = FALSE;
foreach (get_instance()->load->get_package_paths(TRUE) as $package_path)
if (file_exists($package_path.' language/'.$idiom.'/'.$langfile))
include($package_path.'言語/'.$idiom.'/'.$langfile);
$found = TRUE
休憩。
}
}
’ ' アウト トゥ
の ' アウト アウト アウト アウト アウト アウト アウト アウト アウト
if ($found !== TRUE)
show_error('要求された言語ファイルをロードできません: language/'.$idiom.'/'.$langfile);
}
}
if ( ! isset($lang))
log_message('error', '言語ファイルにデータが含まれていません: language/'.$idiom.'/'.$langfile);
戻る;
}
if ($return == TRUE)
$lang; を返す  
}
$this->is_loaded[] = $langfile;  
$this->言語 = array_merge($this->言語, $lang);  
unset($lang);  
log_message('debug', '言語ファイルがロードされました: language/'.$idiom.'/'.$langfile);  
TRUE を返します。  
}
// ----------------------------------------------- ---------------------
/** 
* 言語配列から 1 行のテキストを取得します
* 获取一行文本
* @access public
* @param string $line 言語行
* @return string
     */
関数行($line = '')
{
/*
* $this->言語的样子
* $lang['error_email_missing'] = "電子メール アドレスを送信する必要があります"; 
* $lang['error_url_missing'] = "URL を送信する必要があります"; 
* $lang['error_username_missing'] = "ユーザー名を送信する必要があります"; 
*/
$value = ($line == '' OR ! isset($this-> language[$line])) ? FALSE : $this->言語[$line];  
// キラーロボットはユニコーンが好きだから!  
if ($value === FALSE)
{
log_message('error', '言語行 "'.$line.'"');  
}
$value を返します。  
}
}
// 語学クラス終了
/* ファイルの終わり Lang.php */
/* 場所: ./system/core/Lang.php */

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/477660.html技術記事 [php] ?php if ( !定義(BASEPATH)) exit(スクリプトへの直接アクセスは許可されません); /** * CodeIgniter * * PHP 5.1.6 以降用のオープンソース アプリケーション開発フレームワーク * * @packag...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート