php信息管理系统创建时间?
php获取文件创建时间、修改时间:
filemtime ( string filename )
返回文件上次被修改的时间,出错时返回 FALSE。时间以 Unix 时间戳的方式返回,可用于 date()。
例如:$a=filemtime("log.txt");
echo "修改时间:".date("Y-m-d H:i:s",$a)."
filectime ( string filename )
返回文件上次 inode 被修改的时间,如果出错则返回 FALSE。时间以 Unix 时间戳的方式返回。
例如:$a=filectime("log.txt");
echo "创建时间:".date("Y-m-d H:i:s",$a)."
fileatime ( string filename )
返回文件上次被访问的时间,如果出错则返回 FALSE。时间以 Unix 时间戳的方式返回。
例如:$a=fileatime("log.txt");
echo "修改时间:".date("Y-m-d H:i:s",$a)."
如何使用PHP生成随机字符串?
引言
我们经常可能会用到邀请码,邮件验证码,或者需要使用unique 字符串标记用户属性的情况。
今天我们且不说高深的“全局唯一ID”的生成方案,我们说一个简单的,如何生成一个唯一的,随机的,数组字母组成的字符串。
学习时间
PHP 有一个内置函数 uniqid,用于生成一个唯一的ID。该函数结构形式:
string uniqid([ string $prefix = ""[, bool $more_entropy = false]] )
用于获取一个带前缀、基于当前时间微秒数的唯一ID。
但是该方法所生成的ID并不是安全的,且依赖于本机的时间戳,有可能在同一微秒生成同一ID。所以安全起见,需要添加上 prefix 参数,以示区别。
more_entropy 参数使生成的ID更具有唯一性,如果设置为 TRUE,uniqid() 会在返回的字符串结尾增加额外的煽(使用combined linear congruential generator)。
这就够了吗?这当然不是最优的解决方法。我们尝试其他解决方案。使用 openssl 带来的加密性和唯一性。
bin2hex(openssl_random_pseudo_bytes($bytes))
使用 openssl_random_pseudo_bytes 函数生成一个伪随机字符串的字节,然后使用 bin2hex 将其格式化为十六进制的字符串。
生成的伪随机字节,其字节数由length参数确定。还指示是否使用了加密功能强的算法来生成伪随机字节,并通过可选的crypto_strongparameter来执行此操作。 此种方法返回的参数,很少情况下会出现false。
美中不足的是,这样生成的数字字符串,只在[0-9][a-z]之间,不够广泛。我们尝试加固这个生成方法,增强其鲁棒性。
上述函数会生成一个区间位于 [$min, $max] 的随机数字。然后调用该函数生成指定长度的字符串。
函数 crypto_rand_secure 函数的实现方法,在PHP标准函数中,可以使用 rand / mt_rand 函数替代。
在PHP 7 中,系统提供了更好的函数,可以替代 crypto_rand_secure 使用,就是 random_bytes 和 random_int。使用内置函数,我们将 getToken 函数改造如下:
当然少不了的测试结果,我们批量生成一些 32 位长度的字符串。
写在最后
本文深入探讨了生成随机数字,进而生成指定长度的字符串,实现函数并进行了测试。大家可以在机器环境进行测试。
Happy coding :_)
我是 @程序员小助手 ,持续分享编程知识,欢迎关注。
程序员的“江湖”,有什么“黑话”?
中国软件业在世界处于行业最低端,就是简单的体力劳动,都用刚毕业的孩子,直接分配工活,根本不需经验,更不需要技术含量,就是用工具筒单的组装代码,跟富士康代加工苹果一样,这些码农、程序猿根本算不上技术人才!顶多是能加班干体力活的工人!钱学森等才算真正技术人才!
31岁去学习java和php培训,这还来得及吗?
其实重要的是决心,如果我没记错,我入行IT更晚,可能要32左右,而且没人带,都是自己研究。
请原谅,我没看懂你现在的工作。但是,行行出状元这句话是不会错的。
有两个问题,首先要弄清楚的是:为什么要转行?
原来的工作是怎么个不合适法子?是个人原因,还是家庭原因?
一份工作值不值得做,有人告诉我三个标准
1.工作很忙,基本没时间,但是工资福利很好,那请继续工作吧,别离开,钱别乱花,投资房产,有点债务是好事。
2.工作很闲,但是工资一般,那也可以继续干,但是,请开始做你的第二事业!找找你的兴趣点,做做副业,什么时候副业超过主业2倍,你就自动转行了。
3.工作很忙,没时间,薪酬也一般,但是:你能学到不少东西,那也请继续做。什么时候学不到东西了,请带着你学到的知识跳槽!你的工资就跟上来了,会哭的孩子有奶吃,公司离开你不会倒闭的,你被公司解除合同,你却要自己找房租钱的,所以不要和公司谈感情。
4.没时间,没工资,学不到东西,混吃等死,请赚点房租钱,马上走!
其次,我假设你看了上面仍然决定转行,那么我估计你对原来的行业一定深恶痛绝了。
是不是看到不少人说IT赚钱,就想着转过来呢?然而,像你这样非科班半路转行的人,永远都不会受到重用,所以靠这个出人头地是不可能的。
我试试看你的未来路线,比如你刚入行的2年,没有经验,所以工资很低,跟学徒差不多的。也就是城市的一般工资,比服务员好一点。所以,你会很苦恼,因为你这个年龄要结婚,养孩子。没时间等你混足经验啊。
所以,你的决心非常的重要,你的兴趣非常的重要。你必须花比别人更多的时间,别人休息的时候,你必须学习,既然想学编程,就要每天写代码,不管写多少行,每天都要写。
java和PHP 学哪个?虽然我是PHP的,但我建议你学java,为什么?
因为PHP简单,java也不算复杂,但是java做一个东西,比如做一个购物商城,它可以打包很多东西进去,有那种一大坨,一大坨的东西,可以往里面扔。
这是什么意思?意思是,人为的把这个项目拔得很高,喜马拉雅山那么高。
这可以很容易得忽悠对方:你将来得网站是要很多人访问的,几千万访问的,所以,我给你都配好了最好的东西。
不贵,不贵,8万8千8很吉利。
既然项目的单价很高,那么你的工资就不会低,明白了吗?
所以,你发现没有,我帮你选了Java,省了你的纠结,嗯,我是PHPer,我帮你选了JAVA,我绝对是个好人。
至于学习的路线,并不重要,网上很多,你下载一个路线图,看看需要哪方面的知识,都去了解一下,大致的了解一下就可以。
重要的是实践,实践有个很大的好处,实践出来的代码,都是你未来给下一家公司看的。
实践的过程中,碰到问题,你这时候再去深刻研究每个方方面面的细节。
我举例子:网站怎么做缓存,java有什么现成的方案,java之外的第三方方案呢,比如尝试用redis什么的,那么redis怎么在java里使用。太多太多了,IT涉及的方方面面是很广的。
老板不会在乎你学没学过,它只在乎东西能不能做出来。
最后,再次提醒:请慎重想好要不要转行。
首先介绍一下,我JAVA工作4年,我不建议你去培训,可能我的言论会遭到某些人抨击或者反驳。我的理由如下几点:
1、现如今你31,可能已婚或者有小孩的概率大些,你即便培训花2万学出来。中途首先需要很大的学习毅力,你31肯定跟年轻的比不了,你要比别人多付出更大的努力,但是你如果有家庭,势必会分心。而且你写个年纪逻辑能力下降。
2、假如你学的很顺利,你去公司面试。首先很明确的告诉你。很少会有公司要你。我公司去年也有一个33岁的来面试。后来经理跟我聊天说,这么大的都来面试。公司不愿意要(公司是很现实的,你年纪大了,公司培养你的精力也要付出更多)
3、我看到有些回答说,只要努力,任何时候不晚。我只想说,别打鸡血了,这些回答中肯定有些是培训机构的。我也不想说什么鸡汤文给你听,我只跟你说现实的。
4、假如你中途所有困难都解决,也得到公司聘用。首先我不知道你的情况,是否有这方面基础。然后学历如何。但首先你进公司的待遇是别人22岁的初级程序员待遇,有可能比别人更低。由此牵扯的其他问题,你可以自己想想。
5、一般这行30过了,就会不做编程了,或者技术架构师,或者项目经理。
6、还有如果你执意要去学,那我建议你把自己所有的其它事情安排好,学习期间,要比别人多付出至少3倍的努力。
我的观点仅代表我个人,实事求是的说,如果有反对意见,我也接受