函数封装

5月14日

require_once("")   调用

把数组分割成字符串implode

把字符串分割成数组explode

//在验证码中生成干扰线,就是画线

$posLineX1 = rand(6,30);

$posLineX2 = rand(30,60);

for($i=0;$i<5;$i++){    

$posLinY1=rand(2,10);  

   $posLinY2=rand(11,28);  

   imageline($im,$posLineX1,$posLinY1,$posLineX2,$posLinY2,$te2);    

$posLineX1 += rand(30,60);  

   $posLineX2 += rand(61,98);

}

for($i=0;$i<90;$i++){  

   $te3 = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));

    imagesetpixel($im,rand(2,100),rand(2,30),$te3); }

 

函数封装

//定义常量 define("HOST","127.0.0.1");

function query($sql){   

  $result = mysql_query($sql);   

  //声明一个空的数组   

  $r = array();   

  while($row=mysql_fetch_array($result)){

        //每次循环,就把$row传给$r,这样,$r就成了一个自动编号的2维数组    

     $r[] = $row;   

  }    

return $r; }

 

//获取函数全部参数 //获取传过来的所有参数 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; }

//函数的参数默认值 //test2("test");

//vsprintf使用实例 //$arr = [1,2,3]; //echo vsprintf("%d-%d-%02d",$arr);

//调用自己的时间格式化方法 /*$time = formatDateTime("99-8-8"); echo $time;*/

 

 

 

 

posted @ 2014-05-15 17:40  光的深处BLOG  阅读(468)  评论(0编辑  收藏  举报