91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Thinkphp3.2.3多語言翻譯以及使用百度翻譯的示例分析

發布時間:2021-09-06 14:20:27 來源:億速云 閱讀:111 作者:小新 欄目:web開發

這篇文章將為大家詳細講解有關Thinkphp3.2.3多語言翻譯以及使用百度翻譯的示例分析,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

一、Thinkphp多語言翻譯

首先在Common/conf/config.php文件中寫入如下內容:

<?php
return array(
    //'配置項'=>'配置值'
    //語言包配置
    'LANG_SWITCH_ON' => true, // 開啟語言包功能
    'LANG_AUTO_DETECT' => true, // 自動偵測語言 開啟多語言功能后有效
    'LANG_LIST' => 'zh-cn,en-us,zh-tw', //必須寫可允許的語言列表
    'VAR_LANGUAGE' => 'l', // 默認語言切換變量
);
?>

然后在Common/conf文件夾下新建一個tags.php文件,寫入內容:

<?php
/**
 * 語言包配置文件
 */
return array(
    // 添加下面一行定義即可
    'app_begin'     => array('Behavior\CheckLangBehavior'),  
);
?>

當然還要寫入自己的語言包文件,在Think/Lang/下面有四個語言包文件,你可以在這四個或新建語言包文都可以,或者你在模塊下面新建一個Lang文件夾,比如Home/Lang,在下面新增zh-cn.php,en-us.php等等語言包文件。簡體中文語言包可以這樣寫如下:

<?php

/**
 * 簡體中文語言包
 */
return array(
    '_Login' => "登錄",
);

英文語言包可以這樣寫如下:

<?php

/**
 * 英文語言包
 */
return array(
    '_Login' => "Login",
);

然后隨便在一個頁面,寫入如下內容:

{$Think.lang._Login}

最后在瀏覽器訪問該頁面,即可看到,比如在地址欄輸入如下URL:

http://localhost/index.php?l=zh-cn
http://localhost/index.php?l=en-us

這樣就可以看到中英文切換了,大家可以自己試一試。

二、使用百度翻譯

我這里說的百度翻譯并不是在http://fanyi.baidu.com/這個網址中輸入內容點擊翻譯這樣的,這里我是以代碼的形式利用CURL進行翻譯的。

翻譯文件放在/Home/Common/function.php中,內容如下:

<?php
class Translate {
    /**
     * 支持的語種
     * @var ArrayAccess
     */
    static $Lang = Array (
        'auto' => '自動檢測',
        'en' => '英語',
        'zh' => '中文',
        'cht' => '中文繁體',
    );
    /**
     * 獲取支持的語種
     * @return array 返回支持的語種
     */
    static function getLang() {
        return self::$Lang;
    }
    /**
     * 執行文本翻譯
     * @param string $text 要翻譯的文本
     * @param string $from 原語言語種 默認:中文
     * @param string $to 目標語種 默認:英文
     * @return boolean string 翻譯失敗:false 翻譯成功:翻譯結果
     */
    static function exec($text, $from = 'zh', $to = 'en') {
        $url = "http://fanyi.baidu.com/v2transapi";
        $data = array (
            'from' => $from,
            'to' => $to,
            'query' => $text
        );
        $data = http_build_query ( $data );
        $ch = curl_init ();
        curl_setopt ( $ch, CURLOPT_URL, $url );
        curl_setopt ( $ch, CURLOPT_REFERER, "http://fanyi.baidu.com" );
        curl_setopt ( $ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; rv:37.0) Gecko/20100101 Firefox/37.0' );
        curl_setopt ( $ch, CURLOPT_HEADER, 0 );
        curl_setopt ( $ch, CURLOPT_POST, 1 );
        curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
        curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, 1 );
        curl_setopt ( $ch, CURLOPT_TIMEOUT, 5 );
        $result = curl_exec ( $ch );
        curl_close ( $ch );
        $result = json_decode ( $result, true );
        // 出錯狀態碼 999
        if ($result ['error']) {
            return false;
        }
        return $result ['trans_result'] ['data'] ['0'] ['dst'];
    }
}
?>

大家可以根據自己的需求對其進行修改。

echo Translate::exec ( "大家好","zh",“en”); //這里輸出是:Hello everyone

這樣就翻譯成功了。

關于“Thinkphp3.2.3多語言翻譯以及使用百度翻譯的示例分析”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,使各位可以學到更多知識,如果覺得文章不錯,請把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

谢通门县| 任丘市| 尤溪县| 商水县| 双牌县| 长寿区| 广平县| 册亨县| 温宿县| 尉氏县| 静乐县| 兴文县| 龙岩市| 边坝县| 苏尼特左旗| 浦县| 平凉市| 永川市| 嘉兴市| 元朗区| 陆河县| 林芝县| 广宗县| 石城县| 鱼台县| 泽普县| 武山县| 白水县| 昌宁县| 来凤县| 恩施市| 南宫市| 托克逊县| 西乡县| 潮州市| 白城市| 望奎县| 加查县| 白山市| 阿勒泰市| 咸宁市|