zoukankan      html  css  js  c++  java
  • About_PHP_函数

    关于验证码的完善:

    //生成干扰线
    $posLineX1 = rand(12,50);
    $posLineX2 = rand(50,110);
    $posX = rand(10,50);
    for($i=0;$i<5;$i++){
        $posLineY1 = rand(2,10);
        $posLineY2 = rand(10,30);
        imageline($im,$posLineX1,$posLineY1,$posLineX2,$posLineY2,$two2);
        $posLineX1 += rand(9,40);
        $posLineX2 += rand(45,100);
    }
    
    //生成点点
    for($i=0;$i<100;$i++){
        $two3 = imagecolorallocate($im,rand(0,239),rand(0,239),rand(0,239));
        imagesetpixel($im, rand(7,150), rand(7,70),$two3);
    }
    
    
    //文字位置不一样
    $posX = rand(10,50);
    for($i=0;$i<5;$i++){
        $posY = rand(10,50);
        imagestring($im,rand(3,5),$posX,$posY,substr($rand,$i,1),$two);
        $posX += rand(8,30);
    }

     

    关于函数:

    函数的作用是重复和调用;

    <?php
    function result(){
        echo "hello!kitty";
    }
    ?>
    
    <!--如果要调用result,直接用result();结果输出hello!kitty-->

     

    定义常量我们经常用:const和define,const只可放在代码的最上面。

    在函数里面用全局变量,要用global声明:

    $conn = "";
    
    function close(){
        global $conn;
        mysql_close($conn);
    }

     

    include("dbhelper.php");等同于require_once("function.php");

     

    explode

     array explode(string $delimiter,string $string [,int $limit]);

    此函数返回有字符串组成的数组,每个元素都是string的一个子串,它们被字符串delimiter作为界点分割出来;

    delimiter:边界上的分隔字符。
    string:输入的字符串。
    limit:如果设置了 limit 参数并且是正数,则返回的数组包含最多 limit 个元素,而最后那个元素将包含 string 的剩余部分。

    如果 limit 参数是负数,则返回除了最后的 -limit 个元素外的所有元素。

    如果 limit 是 0,则会被当做 1。

     

     1 <?php
     2 // 示例 1
     3 $pizza = "piece1 piece2 piece3 piece4 piece5 piece6" ;
     4 $pieces = explode ( " " , $pizza );
     5 echo $pieces [ 0 ]; // piece1
     6 echo $pieces [ 1 ]; // piece2
     7 
     8 // 示例 2
     9 $data = "foo:*:1023:1000::/home/foo:/bin/sh" ;
    10 list( $user , $pass , $uid , $gid , $gecos , $home , $shell ) = explode ( ":" , $data );
    11 echo $user ; // foo
    12 echo $pass ; // *
    13 
    14 ?>

    implode: 将一个一维数组的值转化为字符串

    string implode ( string $glue , array $pieces )
    string implode ( array $pieces )
    glue 将一维数组的值连接为一个字符串。
    glue:默认为空的字符串。
    pieces:你想要转换的数组。 
    //例子
    <?php
        $a1 = array("1","2","3");
        $a2 = array("a");
        $a3 = array();
    
        echo "a1 is: '".implode("','",$a1)."'<br>";
        echo "a2 is: '".implode("','",$a2)."'<br>";
        echo "a3 is: '".implode("','",$a3)."'<br>";
    
    ?>
    <?php
    $arr =array(1,2,3,4);
    echo vsprintf("%d-%d",$arr);//输出1-2
    echo vsprintf("%d-%d-%02d",$arr);//输出1-2-03
    ?>
     1 <?php
     2 function test1($str1="",$str2=array()){
     3     //把数组分割成字符串 implode
     4     //下个这个方法的意思是:$str2应该是个数组
     5     //然后把这个数组按照逗号来分割组成一个新的字符串
     6     $s1 = implode(",",$str2);
     7 //    echo $s1;
     8 
     9     //把字符串分割成数组 explode
    10     //这个函数的意思就是:首先$str1是一个字符串,这个字符串是按照一个规格组装出来的
    11     //这个规格就是必须符合前面第一个参数的样式
    12     $s2 = explode("-",$str1);
    13 
    14     print_r($s2);
    15 }
    16 
    17 //函数的默认值
    18 function test2($db="bbs"){
    19     $conn = mysql_connect(HOST,USER,PWD) or die(mysql_error());
    20     mysql_select_db($db,$conn);
    21     mysql_query("set names 'utf8'");
    22 }
    23 
    24 function test3($str="hello world"){
    25     echo $str;
    26 }
    27 
    28 function formatDateTime($date){
    29     $arr = explode("-",$date);
    30     $str = vsprintf("%04d-%02d-%02d",$arr);
    31     return $str;
    32 }
    33 
    34 
    35 //获取函数全部参数
    36 //获取传过来的所有参数
    37 function test4(){
    38     //获取传过来参数的数量
    39     $num = func_num_args();
    40     //获取所有传入的参数,返回的是一个数组
    41     $arr = func_get_args();
    42 
    43     var_dump($arr);
    44 }
    45 
    46 function mysql_ping(){
    47     //获取传入的所有参数的数组
    48     $arr = func_get_args();
    49     //获取第一个参数,在我们这个列子里面,第一个参数其实就是sql语句
    50     $sql = $arr[0];
    51     //传入的sql语句,其实开始是用?替代的变量的位置
    52     //这里需要将变量转化为可以替换格式化字符串的'%s'这样的符号
    53     $sql = str_replace("?","'%s'",$sql);
    54 
    55     //array_shift,是将数组最开始的元素移出。返回移出的值,然后数组剩下其余的部分
    56     $values = array_shift($arr);
    57 
    58     $sql = vsprintf($sql,$arr);
    59 
    60     echo $sql;
    61 }
    62 
    63 
    64 
    65 
    66 ?>
  • 相关阅读:
    Android SHA1与Package获取方式
    《C++语言基础》实践參考——数组作数据成员
    Linux进程间通信——使用共享内存
    Java中ArrayList和LinkedList差别
    hdu1695(莫比乌斯)或欧拉函数+容斥
    Android学习路线(二十四)ActionBar Fragment运用最佳实践
    HTML——使用表格对表单进行布局
    Nginx 訪问日志增长暴增出现尖刀的具体分析
    基于特定值来推断隐藏显示元素的jQuery插件
    怎样配置PHP环境和安装Zendstdio编辑器
  • 原文地址:https://www.cnblogs.com/a-moemiss/p/3728746.html
Copyright © 2011-2022 走看看