日常开发和调试的时候,经常会遇到一些错误,光怪陆离的不知所以,所以,特此将错误汇总一下,借鉴!!!
1.
原因分析: 一般可能是该文件出现了问题,检查一下代码和格式,是否出现开始的地方出现了空格,或者字符集非utf-8
例如:
2.
原因分析: 在解析XML数据的时候 报出的这个错误,使用函数 simplxml_load_string($xmlData); 之所以错误是因为: 在文件的最前端 即<?xml version="1.0" encoding="UTF-8"?>前面不能有空格。
解决: 将该标签前面的空格进行删除即可.
知识点: simplexml_load_string 函数的使用. 它是将格式良好的XML字符串转化为SimpleXMLElement对象
参数介绍:
-
- LIBXML_COMPACT - 激活节点分配优化(可加速应用程序)
- LIBXML_DTDATTR - 设置默认DTD属性
- LIBXML_DTDLOAD - 加载外部子集
- LIBXML_DTDVALID - 使用DTD进行验证
- LIBXML_NOBLANKS - 删除空白节点
- LIBXML_NOCDATA - 将CDATA合并为文本节点
- LIBXML_NOEMPTYTAG - 展开空标记(例如对<br> </ br>),仅在DOMDocument-> save()和DOMDocument-> saveXML()函数中可用
- LIBXML_NOENT - 替代实体
- LIBXML_NOERROR - 不显示错误报告
- LIBXML_NONET - 加载文档时禁用网络访问
- LIBXML_NOWARNING - 不显示警告报告
- LIBXML_NOXMLDECL - 保存文档时删除XML声明
- LIBXML_NSCLEAN - 删除多余的命名空间声明
- LIBXML_PARSEHUGE - 设置XML_PARSE_HUGE标志,放宽解析器的任何硬编码限制。这会影响极限,如文档的最大深度和文本节点大小的限制
- LIBXML_XINCLUDE - 实现XInclude替换
- LIBXML_ERR_ERROR - 获取可恢复的错误
- LIBXML_ERR_FATAL - 获取致命错误
- LIBXML_ERR_NONE - 获取无错误
- LIBXML_ERR_WARNING - 获取简单的警告
- LIBXML_VERSION - 获取libxml版本
- LIBXML_DOTTED_VERSION - 获取点分的libxml版本
3.
问题: 在使用thinkphp框架的时候,发生不能进行路由的访问,都是返回的500错误
原因: PHP中有设置对于disabled_functions 禁用的一些函数,例如 : exec,scandir,shell_exec 等函数被禁用,但是框架中频繁的使用这些函数而导致
解决方案: 修改php.ini配置文件,将thinkphp框架中用到的函数,从禁用的函数中去除即可,正常访问了