11.22随笔

Posted trustme326

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了11.22随笔相关的知识,希望对你有一定的参考价值。

  就业班开班到今天已经第七天了,几乎每天都是概念,其实这些知识都不是很难,但就是多,要多看记住或者留下印象。其中我觉得最麻烦的就是php的自动转换,因为PHP的自动转换经常发生,所以有些业务逻辑需要判断的时候经常会出错,就在今晚的考试里,就出现了一种。所以我截了图做了桌面,让自己记得。

在做一个简单的验证码生成器的时候,虽然有辅导员给的函数,但自己反而另外想到了一种方法:

<?php
//以下方法会提高数字的获得概率,并改进了array_rand()parameter 2 不为 1 时候的随机性下降 
function security(){
	static $j = 1;
	$arr = array(1,\'o\',\'O\',\'l\',\'L\',\'i\',\'I\');
	for($i = $j;$i <= 4;$i++,$j++){
		$num1 = mt_rand(49,57);				//获得数字
		$num2 = mt_rand(65,90);				//获得大写字母
		$num3 = mt_rand(97,122);			//获得小写字母
		$number = "num";					//可变变量
		$res = $number.mt_rand(1,3);		//输出字符串的变量名
		foreach($arr as $value){			//遍历核对
			if(chr($$res) == $value){
				security();		//遇到特殊字符则递归交给下次调用的函数处理,本次函数调用则return
				return;
			}
		}
		printf("%c",$$res);					//没有特殊字符则是正常输出
	}
}

security();

  

 

以上是关于11.22随笔的主要内容,如果未能解决你的问题,请参考以下文章

11.22

8.3 11.22-11.24

11.22 访问日志不记录静态文件 11.23 访问日志切割 11.24 静态元素过期时间

每日一练 11.22

11.22项目进度

BUUCTF(11.14-11.22)