首頁 > 後端開發 > php教程 > strtoupper来导致中文乱码么

strtoupper来导致中文乱码么

WBOY
發布: 2016-06-13 12:32:35
原創
1322 人瀏覽過

strtoupper回导致中文乱码么

本帖最后由 molaifeng 于 2013-11-25 09:04:16 编辑     在部署项目时,遇到一个奇怪的问题,页面打开后,php脚本嵌套在html页面里的部分出现乱码,数据库是没问题的。后来定位,发现问题出现在这段代码上(tp框架)。

<br />
/**<br />
 * 获取和设置语言定义(不区分大小写)<br />
 * @param string|array $name 语言变量<br />
 * @param string $value 语言值<br />
 * @return mixed<br />
 */<br />
function L($name=null, $value=null) {<br />
    static $_lang = array();<br />
    // 空参数返回所有定义<br />
    if (empty($name))<br />
        return $_lang;<br />
    // 判断语言获取(或设置)<br />
    // 若不存在,直接返回全大写$name<br />
    if (is_string($name)) {<br />
        echo $name, ' ';<br />
        $name = strtoupper($name);echo $name;<br />
        if (is_null($value))<br />
            return isset($_lang[$name]) ? $_lang[$name] : $name;<br />
        $_lang[$name] = $value; // 语言定义<br />
        return;<br />
    }<br />
    // 批量定义<br />
    if (is_array($name))<br />
        $_lang = array_merge($_lang, array_change_key_case($name, CASE_UPPER));<br />
    return;<br />
}<br />
<br />
登入後複製



后来,把那个strtoupper该成了mb_strtoupper
<br />
$name = mb_strtoupper($name, 'UTF-8');<br />
登入後複製

这个项目部署在其他服务器时没出现这个问题啊,哪位大大解释下,谢谢!!!
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板