PHP指定日期转换时间戳有2种方法,分别是用mktime()和strtotime()函数来实现即可!这两种函数虽然都能实现,但是各有优缺点:strtotime()函数用得相对来说比较多;因为它直接接收一个字符串的日期格式即可转换,非常的方便!
- <?php
- echo strtotime("2018-12-22 15:6:28"); //1545491188
- echo mktime ( 15 , 6 , 28 , 12 , 22 , 2018 ); //1545491188
- echo date ( "Y-m-d H:i:s" , strtotime("2018-12-22 15:6:28")); //2018-12-22 15:06:28
- echo date ( "Y-m-d H:i:s" , mktime ( 15 , 6 , 28 , 12 , 22 , 2018 )); //2018-12-22 15:06:28
由上面可以看出来了两种函数有什么不同了吧!mktime()函数虽然说也可以达到转换时间戳的效果,但是它的参数每一个都是分开的,试想一下,如果你得到的指定日期格式是一个完整的字符串,你指定需要先逐步转换成单个的年,月,日,时,分,秒;这样不是画蛇添足吗?
不能说哪种函数好,哪种函数不好?只是各有优点,用的场景不一样仅此而已;互联网上很多的文档讲的是直接用strtotime()函数把指定日期转换为时间戳,mktime()拥有这个功能已经被很多人忘记了吧!特别是新手学习PHP的时候,它喜欢经常去各大平台看这些文章,因此很容易把你误入歧途的!
因为每个PHP高手写的心得都是站立在自己的角度去创建优秀文章的,你如果未达到作者的境界,你很难完全悟透;还需要自己踩坑积累经验!