深入浅出讲解:php的socket通信_PHP教程
深入浅出讲解:php的socket通信
1. php中常见的错误类型
1. 语法错误
* 1). 少写分号
* 2). 。 。。。。。2. 环境错误
* 1). php 配置等待3. 逻辑错误
* 1). 想用一个等号,结果使用了两个等号
2.已定义的错误类型
错误名 | 错误描述 |
---|---|
E_ALL |
所有的错误和报告 |
E_ERROR |
致命的运行时错误,脚本的执行被 |
E_WARBING |
运行时警告(非致命性),脚本的执行不会被暂停 |
E_PARSE |
编译时解析错误 |
E_NOTICE |
运行时提醒 |
E_STRICT |
启动php对代码的修改建议,以确保代码具有最佳的互操作性和向前兼容性 |
E_DEPRECATED |
运行时通知,启动后将会对在未来版本中可能无法正常工作的代码给出警告 |
E_CORE_ERROR |
发生于php启动时初始化过程中的致命错误 |
E_CORE_WARNING |
发生于php启动时初始化过程中的警告错误(非致命性) |
E_COMPILE_ERROR |
编译时致命性错 |
E_COMILE_WARNING |
编译时警告(非致命性错) |
E_USER_ERROR |
用户产生的出错消息 |
E_USER_WARNING |
用户产生的警告消息 |
E_USER_NOTICE |
用户产生的提醒消息 |
E_USER_DEPRECATED |
用户产生的警告信息,类似E_DEPRECATED,但是是通过trigger_error 函数产生的 |
E_RECOVERABLE_ERROR |
可被捕获的指明错误,她表示可能发生了一个非常危险的错误,但是还没有导致PHP引擎处于不稳定状态。如果该错误没有被用户自定义句柄捕获(参见set_error_handler() ),将成为一个E_ERROR,从而脚本会终止运行。 |
3.php中的错误级别
1.
Deprecated(不推荐|过时)
错误
* 1).最低级的错误
比如使用ereg
函数, mysql_escape_string
* 2).Deprecated: mysql_escape_string(): This function is deprecated; use mysql_real_escape_string() instead.
2.
Notice
通知级别的错误
* 1). 访问未定义的变量
* 2). 访问数组时,$arr[“name”]; 程序首先会执行查找常量name,如果没有找到则会将name当做字符串处理3.
Warning
警告级别的错误
* 1). 参数个数不对
* 2). 参数类型不对4.
Fatal error
致命级别的错误(终止程序继续执行)
* 1). 调用未定义的函数
* 2). 参数类型不对5.
parse error
语法解析错误
* 1). 检查阶段没有通过,其他任何错误都不会看到,因为还没到哪里,程序还没解析成功
6.
E_USER_相关的错误
* 1). 检查阶段没有通过,其他任何错误都不会看到,因为还没到哪里,程序还没解析成功
4. php配置文件中与错误相关的选项
选项 | 描述 |
---|---|
error_reporting | 设置错误报告的级别 |
display_error | 是否显示错误 |
log_errors | 设置是否将产生的错误信息记录到日志或者error_log |
error_log | 设置错误日志的保存文件 |
log_errors_max_len | 设置log_errors的最大字节数 |
ignore_repeated_errors | 是否忽略重复的错误信息 |
ignore_repeated_source | 是否忽略重复的消息来源 |
track_errors | 如果开启此选项,最后一个错误将永远保存在$php_errormsg 中 |
5. 如何设置错误级别
1. 在配置文件中修改error_reporting 的值
2. 在代码中通过
error_reporting函数
设置
* 1.error_reporting(0); 不显示错误,除了E_PARSE
* 2.error_reporting(-1) | error_reporting(E_ALL) 显示所有错误3. 使用ini_set(‘error_reporting’, 0)函数运行时设置
6. 抑制错误输出符号@
1.
@
settype()
7.通过trigger_error出发PHP错误
触发错误的功能不只限于php解析器,还可以通过trigger_error()
函数触发错误。 trigger_error(‘错误信息’, 自定义错误,如:(E_USER_NOTICE) ) trigger_error(‘自定义错误信息’, E_USER_NOTICE); 该函数不会打断程序继续执行。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

JWT是一种基于JSON的开放标准,用于在各方之间安全地传输信息,主要用于身份验证和信息交换。1.JWT由Header、Payload和Signature三部分组成。2.JWT的工作原理包括生成JWT、验证JWT和解析Payload三个步骤。3.在PHP中使用JWT进行身份验证时,可以生成和验证JWT,并在高级用法中包含用户角色和权限信息。4.常见错误包括签名验证失败、令牌过期和Payload过大,调试技巧包括使用调试工具和日志记录。5.性能优化和最佳实践包括使用合适的签名算法、合理设置有效期、

文章讨论了PHP 5.3中引入的PHP中的晚期静态结合(LSB),从而允许静态方法的运行时分辨率调用以获得更灵活的继承。 LSB的实用应用和潜在的触摸

SOLID原则在PHP开发中的应用包括:1.单一职责原则(SRP):每个类只负责一个功能。2.开闭原则(OCP):通过扩展而非修改实现变化。3.里氏替换原则(LSP):子类可替换基类而不影响程序正确性。4.接口隔离原则(ISP):使用细粒度接口避免依赖不使用的方法。5.依赖倒置原则(DIP):高低层次模块都依赖于抽象,通过依赖注入实现。

使用PHP的cURL库发送JSON数据在PHP开发中,经常需要与外部API进行交互,其中一种常见的方式是使用cURL库发送POST�...

如何在系统重启后自动设置unixsocket的权限每次系统重启后,我们都需要执行以下命令来修改unixsocket的权限:sudo...
