使用PHP5(cgi)从文件系统输出模板文件,并在输出原始HTML时遇到问题.

private function fetch($name) {
    $path = $this->j->config['template_path'] . $name . '.html';
    if (!file_exists($path)) {
        dbgerror('Could not find the template "' . $name . '" in ' . $path);
    }
    $f = fopen($path, 'r');
    $t = fread($f, filesize($path));
    fclose($f);
    if (substr($t, 0, 3) == b'\xef\xbb\xbf') {
        $t = substr($t, 3);
    }
    return $t;
}

尽管我已经添加了BOM修正,但Firefox接受它仍然存在问题.你可以在这里看到一个实时副本:http://ircb.in/jisti/(如果你想查看的话,我抛出的模板文件是http://ircb.in/jisti/home.html)

知道怎么解决吗?欧欧欧

推荐答案

您可以使用以下代码删除utf8 bom表

//Remove UTF8 Bom

function remove_utf8_bom($text)
{
    $bom = pack('H*','EFBBBF');
    $text = preg_replace("/^$bom/", '', $text);
    return $text;
}

Php相关问答推荐

需要数组中单个项目的Laravel 11验证必须是以下之一

带有打印和回声的PHP意外命令

Laravel 11发送邮箱时奇怪的未定义数组键名称

允许Laravel路由指定`withTrashed`,尽管有显式的模型绑定

使用WooCommerce本机产品短码时不考虑价格筛选(_SHORT CODE)

PHP FFI—将PHP数组转换为C指针数组

WooCommerce购物车中仅允许一个可下载产品

Laravel 10 -扩展现有的artisan命令?

Laravel eloquent-如果没有包含InitialValue的结果,则查询where Second Value

从两个日期创建日期范围,然后为范围中的每个日期复制子数组

如何在laravel中添加延迟?

如果WooCommerce购物车在 checkout 时被清空,请重定向至store 页面

shell_exec运行大型数据处理

在WooCommerce存档页面中显示可变产品的库存变化属性

Mac 上安装 php 时出现 Homebrew 错误

使用其ID查询和捕获与订单相关的其他详细信息的shopware 6方法

从图像URL中获取文件扩展名?

自定义主键值未正确显示

NetBeans 不显示中文内容

在全局安装 Composer 包后运行命令