首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >php语言文件windows-1255

php语言文件windows-1255
EN

Stack Overflow用户
提问于 2013-09-18 10:42:50
回答 1查看 767关注 0票数 0

我的语言文件是这样的:

代码语言:javascript
复制
<?php
header('Content-Type: text/html; charset=windows-1255');

function heb($phrase){
    static $lang = array(
        'title' => 'ודים אילוף כלבים',
    );
    return $lang[$phrase];
}

?>

我的index.php文件是这样的:

代码语言:javascript
复制
<?php
include('langs.php');
?>

<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1255" />
        <title><?php echo heb('title'); ?></title>

        <link rel="stylesheet" type="text/css" href="css/style.css" />
    </head>

<body>
</body>
</html>

但标题是“׳·׳”׳™׳׳׳™׳׳·׳£׳>׳׳‘׳™׳“,而不是希伯来文中的单词--我如何才能在不搞错编码的情况下编辑lang文件?

EN

回答 1

Stack Overflow用户

发布于 2013-09-18 10:47:39

Content-Type: text/html; charset=windows-1255和相关的元标记只是浏览器的一个指示符,表明站点应该是在Windows1255中编码的;它只是告诉浏览器应该期待什么。如果实际内容没有在Windows1255中实际编码,那么您当然会得到错误的结果。

在PHP中,字符串文本具有保存在其中的源文件的编码。即:

代码语言:javascript
复制
'title' => 'ודים אילוף כלבים'

这个字符串是用任何编码的方式编码的,不管它是用什么编码的。我猜你的编辑把文件保存为UTF-8。所以你实际上是在向浏览器发送UTF-8内容,但是告诉它它是Windows1255编码的。因此:垃圾字符。

或者将PHP文件保存在Windows1255中,或者将编码指示符设置为(我猜是) UTF-8。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18870075

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档