<?php
//定义常量
define("HOST","127.0.0.1");
define("USER","root");
define("PWD","");
$conn = "";
function get_conn(){
global $conn;
$conn = mysql_connect(HOST,USER,PWD) or die(mysql_error());
mysql_select_db("bbs",$conn);
mysql_query("set names 'utf8'");
}
function query($sql){
$result = mysql_query($sql);
//声明一个空的数组
$r = array();
while($row=mysql_fetch_array($result)){
//每次循环,就把$row传给$r,这样,$r就成了一个自动编号的2维数组
$r[] = $row;
}
return $r;
}
//插入方法
function insert($sql){
$result = mysql_query($sql);
return $result;
}
function insert2($table,$column,$value){
$sql = "insert into $table($column) values($value)";
$result = mysql_query($sql);
return $result;
}
function close(){
global $conn;
mysql_close($conn);
}
?>
<?php
function test1($str1="",$str2=array()){
//把数组分割成字符串 implode
//下个这个方法的意思是:$str2应该是个数组
//然后把这个数组按照逗号来分割组成一个新的字符串
$s1 = implode(",",$str2);
// echo $s1;
//把字符串分割成数组 explode
//这个函数的意思就是:首先$str1是一个字符串,这个字符串是按照一个规格组装出来的
//这个规格就是必须符合前面第一个参数的样式
$s2 = explode("-",$str1);
print_r($s2);
}
//函数的默认值
function test2($db="bbs"){
$conn = mysql_connect(HOST,USER,PWD) or die(mysql_error());
mysql_select_db($db,$conn);
mysql_query("set names 'utf8'");
}
function test3($str="hello world"){
echo $str;
}
function formatDateTime($date){
$arr = explode("-",$date);
$str = vsprintf("%04d-%02d-%02d",$arr);
return $str;
}
//获取函数全部参数
//获取传过来的所有参数
function test4(){
//获取传过来参数的数量
$num = func_num_args();
//获取所有传入的参数,返回的是一个数组
$arr = func_get_args();
var_dump($arr);
}
function mysql_ping(){
//获取传入的所有参数的数组
$arr = func_get_args();
//获取第一个参数,在我们这个列子里面,第一个参数其实就是sql语句
$sql = $arr[0];
//传入的sql语句,其实开始是用?替代的变量的位置
//这里需要将变量转化为可以替换格式化字符串的'%s'这样的符号
$sql = str_replace("?","'%s'",$sql);
//array_shift,是将数组最开始的元素移出。返回移出的值,然后数组剩下其余的部分
$values = array_shift($arr);
$sql = vsprintf($sql,$arr);
echo $sql;
}
?>
验证码图片里的点点与线线
imagefill($img,0,0,$background); //字体颜色 $color = imagecolorallocate($img,rand(0,255),rand(0,255),rand(0,255)); $color1 = imagecolorallocate($img,rand(0,255),rand(0,255),rand(0,255)); //生成干扰线 $lineX1 = rand(1,200); $lineX2 = rand(30,50); for($i = 0;$i<3;$i++){ $lineY1 = rand(3,300); $lineY2 = rand(13,50); imageline($img,$lineX1,$lineX2,$lineY1,$lineY2,$color1); $lineX1 += rand(30,95); $lineX2 += rand(100,200); } //在图片上生成点点 for($i=0;$i<50;$i++){ $color3 = imagecolorallocate($img,rand(0,255),rand(0,255),rand(0,255)); imagesetpixel($img,rand(2,300),rand(3,50),$color3); } //图片上生成文字 //使图片上的文字层次不齐 $postX = rand(6,45); for($i=0;$i<4;$i++){ $postY = rand(2,15); imagestring($img,rand(2,6),$postX,$postY,substr($rand,$i,1),$color); $postX += rand(8,20); }