<?php
//高先生简单验证码.
//随机数
//为什么循环0-15的数字
//因为要实现最简单的字母和数字混搭
//16进制0-9 a-f
//dechex 十进制转换为16进制
//创建一个四位的验证码.
//$nmsg. 将每次循环的值累计起来
for($i=0;$i<4;$i++){
$nmsg.= dechex(mt_rand(0,15));
}
//验证码数组准备完成,开始绘图
ob_clean();
//设定标头.告诉浏览器你要生成的MIME类型
header('Content-type:image/png');
//创建一个图形区域.赋值给资源句柄
$im=imagecreatetruecolor(75,25);
//在空白的图像区域绘制填充背景
$blue=imagecolorallocate($im,0,102,255); //颜色1 背景
$white=imagecolorallocate($im,255,255,255); //颜色2 文字
imagefill($im,0,0,$blue); //填充颜色
//生成文本信息.将验证码的字符串写入图片.
imagestring($im,5,18,5,$nmsg,$white);
//输出最终图形
imagepng($im);
//清除占用的资源
imagedestroy($im);
?> 常见的PHP优化方法,让PHP效率更高,抽空更新(很多都是学习网络上的方法,想深度理解建议学C语言。):字符串的输出最好使用单引号,不要使用双银行,否则PHP会去找是否存在变量需要解析大数组,对象,资源句柄使用完及时进行unset()能用系统函数解决的问题尽量不要使用正则表达式,虽然正则表达式逼格高...
if($_SERVER['REQUEST_METHOD'] == 'POST') { echo('This is post '); } elseif ($_SERVER['...
项目中使用服务来执行webservice,由于对方系统api不稳定,经常导致服务崩溃,只能重启,一个月差不多要重启一次。初期的解决办法是捕获异常,然后continue掉。<?php try { $url = 'http...
逛公众号文章看到文章"php实现事件监听与触发的方法,你用过吗?",我就好奇了,php又不是asp.net的webform,哪里来的服务端事件监听。于是学习了一波。先看下监听类:class Event { /** &nbs...
(1).前端文件:<form action="upload.php" method="post" enctype="multipart/form-data"> &...
重构框架的时候想要考虑支持下cli模式,于是参考了thinkphp的底层。/** * 获取应用根目录 * @return string */ public static function getRootP...