PHP中header('content-type:text/html;charset="utf-8')和error_reporting()的作用

本文介绍了PHP中header函数的作用及使用方法,用于解决页面乱码问题,并详细阐述了error_reporting函数的功能,展示了如何通过调整错误报告级别来管理脚本执行过程中可能出现的各种错误。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.header

PHP文件插入header("Content-type: text/html; charset=utf-8");
相当于页面里面的<meta http-equiv="Content-Type" content="text/html; charset=utf-8">;
目的:防止页面出现乱码

2.error_reporting

定义和用法:error_reporting()设置PHP的报错级别并返回当前级别。
函数语法:error_reporting(report_level)
如果参数 level 未指定,当前报错级别将被返回。下面几项是level可能的值:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
1:E_ERROR 致命的运行错误。错误无法恢复,暂停执行脚本。
2:E_WARNING 运行时警告(非致命性错误)。非致命的运行错误,脚本执行不会停止。
4:E_PARSE 编译时解析错误。解析错误只由分析器产生。
8:E_NOTICE 运行时提醒(这些经常是你代码中的bug引起的,也可能是有意的行为造成的。)
16:E_CORE_ERROR PHP启动时初始化过程中的致命错误。
32:E_CORE_WARNING PHP启动时初始化过程中的警告(非致命性错)。
64:E_COMPILE_ERROR 编译时致命性错。这就像由Zend脚本引擎生成了一个E_ERROR。
128:E_COMPILE_WARNING 编译时警告(非致命性错)。这就像由Zend脚本引擎生成了一个E_WARNING警告。
256:E_USER_ERROR 用户自定义的错误消息。这就像由使用PHP函数trigger_error(程序员设置E_ERROR)
512:E_USER_WARNING 用户自定义的警告消息。这就像由使用PHP函数trigger_error(程序员设定的一个E_WARNING警告)
1024:E_USER_NOTICE 用户自定义的提醒消息。这就像一个由使用PHP函数trigger_error(程序员一个E_NOTICE集)
2048:E_STRICT 编码标准化警告。允许PHP建议如何修改代码以确保最佳的互操作性向前兼容性。
4096:E_RECOVERABLE_ERROR 开捕致命错误。这就像一个E_ERROR,但可以通过用户定义的处理捕获(又见set_error_handler())
8191:E_ALL 所有的错误和警告(不包括 E_STRICT) (E_STRICT will be part of E_ALL as of PHP 6.0)

任意数目的以上选项都可以用“或”来连接(用 OR 或 |),这样可以报告所有需要的各级别错误。
例如,下面的代码关闭了用户自定义的错误和警告,执行了某些操作,然后恢复到原始的报错级别:

1 <?php
2 //禁用错误报告
3 error_reporting(0);
4 //报告运行时错误
5 error_reporting(E_ERROR | E_WARNING | E_PARSE); 
6 //报告所有错误
7 error_reporting(E_ALL);
8 ?>

 

转载于:https://www.cnblogs.com/zuojiayi/p/6362301.html

<?php // 设置时区为北京时间 date_default_timezone_set('Asia/Shanghai'); // 设置内容类型编码 header('Content-Type: text/html; charset=utf-8'); // 移除X-Frame-Options,避免拦截iframe加载 header_remove('X-Frame-Options'); // 【临时注释掉 Content-Security-Policy】 header("Content-Security-Policy: frame-ancestors 'self' https://e.hzcl.org.cn"); // 禁止缓存,方便调试 header('Cache-Control: no-store, no-cache, must-revalidate'); header('Pragma: no-cache'); // 限制脚本最大执行时间,防止死循环卡死 set_time_limit(5); // 关闭错误显示,避免页面错乱 ini_set('display_errors', 0); error_reporting(0); // 清空输出缓冲 while (ob_get_level()) { ob_end_clean(); } ?> <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8" /> <title>移动App WebView 测试页面</title> <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" /> <style> body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif; margin: 20px; line-height: 1.6; background-color: #fafafa; color: #333; } </style> </head> <body> <h1>移动App WebView测试页面</h1> <p>欢迎使用移动App环境中的WebView测试页面。</p> <p>允许来自 https://e.hzcl.org.cn 的页面以iframe形式嵌入。</p> <p>当前服务器时间:<?= date('Y-m-d H:i:s') ?></p> <script> console.log("页面已加载:移动App WebView测试页面"); setTimeout(() => { document.body.style.backgroundColor = "#e0f7fa"; const p = document.createElement("p"); p.textContent = "动态内容:页面渲染正常。"; document.body.appendChild(p); }, 1000); </script> </body> </html> 这里那个参数会导致苹果家在不了
最新发布
06-25
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值