一、错误处理
成都创新互联公司致力于互联网品牌建设与网络营销,包括成都做网站、网站建设、SEO优化、网络推广、整站优化营销策划推广、电子商务、移动互联网营销等。成都创新互联公司为不同类型的客户提供良好的互联网应用定制及解决方案,成都创新互联公司核心团队十多年专注互联网开发,积累了丰富的网站经验,为广大企业客户提供一站式企业网站建设服务,在网站建设行业内树立了良好口碑。a) 错误报告级别(重点)
1. 语法错误: error会给一个致命错误 终止程序继续执行
2. 运行时错误: notice warning 运行代码的时候错了 有错误提示,但是他们不会影响程序运行,但是结果不是我们想要的!
3. 逻辑错误: 逻辑出现了错误 大的难点 就是不报错 不好排除
4. notice: 本身不是一个错误 只是一个提示 这个错误可以忽略不计
5. warning: 警告只要产生warning错误 程序的执行结果就不是我们想要的结果,这个错误必须要解决掉而且他不会终止程序继续进行
6. error:致命错误 必须排除
b) 调整错误报错级别:(重点)
E_ERROR 1 致命的运行时错误(阻止代码执行)
E_WARNING 2 运行时警告
E_NOTICE 8 运行时注意
E_ALL 所有的错误哦 警告的注意信息
c) 自定义错误处理
1. 屏蔽错误
1. 系统函数(重点重点重点)(推荐使用下面内容)
ini_set() 设置php.ini中的配置项
第一个参数 要设置php.ini的配置项
第二个参数 要设置php.ini的配置项的值
ini_get() 获取php.ini中的配置项的值
一个参数 要获取php.ini中配置项
返回值 1 或者0 如果是display_errors配置项1代表不屏蔽错误0代表屏蔽错误
error_reporting() 设置错误报告级别
参数 E_ALL E_ERROR ^ E_WARNING ^ E_NOTICE ^
2. 手动屏蔽错误
如果你要使用手动屏蔽错误 一定修改之后进行重启服务
修改php.ini 找到display_errors将里面的值改为off就是屏蔽错误
; Default Value: On
; Development Value: On
; Production Value: Off
; http://php.net/display-errors
display_errors = off
或者
修改php.ini 找到error_reporting将值修改为E_ALL &~E_NOTICE &~E_WARNING
; Default Value: E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED
; Development Value: E_ALL
; Production Value: E_ALL & ~E_DEPRECATED & ~E_STRICT
; http://php.net/error-reporting
error_reporting = E_ALL
2. 修改错误位置
error_log() (重点重点重点)
三个参数
第一个参数 错误信息
第二个参数 3 以字符串形式存储
第三个参数 保存的文件
切记各位如果你修改php.ini 一定要重新启动你的wamp
自定义错误日志(重点)
error_log() 写入wamp下面的php日志中
; Log errors to specified file. PHP's default behavior is to leave this value
; empty.
; http://php.net/error-log
; Example:
//开启下面内容写入到php日志中
error_log ="c:/wamp/logs/php_error.log"
; Log errors to syslog (Event Log on Windows).
//开启下面内容写入到windows系统日志
;error_log = syslog
d) 以下几种情况可以考虑自定义错误处理
1. 可以记下错误信息,及时发现一些生产环境出现的问题
2. 可以屏蔽错误
3. 可以控制错误的输出
4. 可以作为调试工具
e) trigger_error() 返回notice错误样式 (重点)
参数1 错误信息
一、现实中我们表示时间
2017年10月31日
2017/10/31
2017.10.31
2017-10-31
2017年10月31日 上午8点44分13秒
外国人
10/31/2017
中国古代:
寅年寅月寅时出生 唐伯虎
世界人民表示时间的方式不一样 存储不方便,计算起来也不方便 不同时间的表示影响团结呀 不利于沟通呀
在计算机中统一时间的方法是使用unix 时间戳
1. 什么是时间戳
从1970年1月1日0时0分0秒(格林威治时间)开始到指定时间点的秒数就是时间戳 时间戳属于整型2147483647
2. php的时间戳是从1970年开始大表示到2038年1月27日
3. 时间模块,以时间函数的学习为主
二、时间函数(重点重点重点重点重点重点)
1. time() 获取当前时间戳
2. date() 格式化当前时间戳
格式化: 转换为能看懂的格式
参数1: 要转换的格式的格式
Y 代表四位数字的年份
m 代表两位数字的月份 有前导零
d 代表天数 有前导零 01-31
H 代表小时 24小时格式 00-23
i 代表分钟 00~59
s 代表秒数00 ~59
参数2:可选参数 如果没有设置时间戳,表示格式化当前时间戳
如果设置时间戳 表示格式化指定时间戳
3. mktime() 返回一个指定时间的时间戳
参数: 时 分 秒 月 日 年
注意: 参数可以从右向左一次省略,省略的时间会被计算当前时间 他可以自动验证时间
三、修改时区(重点重点重点)
date_default_timezone_set() 函数来设置时区
参数: 修改的时区地址
PRC People's Republic of China ×××
大洲/城市
Asia/ShangHai
Asia/ChongQing
Asia/Hong_Kong
date_default_timezone_get() 函数来获取时区
可以修改php.ini来修改时区
打开php.ini ->查找date.timezone将里面的值改为date.timezone=Asia/ShangHai或者PRC
修改完成之后重启服务
四、返回当前unix时间戳和微秒数
microtime()
参数 可选参数 如果设置为true 表示返回一个浮点型的时间戳+微秒数
默认为false 返回字符串类型 微秒数和时间戳
五、将任何英文文本的日期时间描述解析为unix时间戳
strtotime();
六、date的格式参数
1. a ----‘am’或者 ‘pm’
2. A ---- “AM”或者”PM”
3. d ---- 天数 0补全
4. D---- 星期几 三个英文字母
5. F---- 月份 英文全名
6. h---- 12进制 01 -12
7. H-- 24进制 00 -23
8. g-- 12小时进制 1-12
9. G--- 24小时进制0-23
10. i -- 分钟 00 -59
11. j--- 天数 没有0补全
12. l--- 星期几 英文全名
13. m--- 月份 01-12
14. n--- 月份 1-12
15. M 月份 三个英文
16. s-- 秒 00 -59
17. S-- 自尾加英文序数 二个英文字母 th nd
18. t--- 指定月份天数 28-31
19. U--- 总秒数
20. w-- 数字型星期几 0 星期日 6星期六
21. Y--- 年 四位数字
22. y--- 年 二位数字
23. z--- 一年中的第几天
七、getdate() 获取当前时间的日期详细信息 它是以数组的形式返回
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。