PHP函数积累

PHP函数积累

  1. simplexml_load_string 将Xml转化为对象;返回对象
     1 <?php
     2 $string = <<<XML
     3 <?xml version='1.0'?> 
     4 <document>
     5 <title>Forty What?</title>
     6 <from>Joe</from>
     7 <to>Jane</to>
     8 <body>
     9   I know that's the answer -- but what's the question?
    10 </body>
    11 </document>
    12 XML;
    13 $xml = simplexml_load_string($string);
    14 
    15 var_dump($xml);
    16 ?>
    结果:
    object(SimpleXMLElement)[1]
      public 'title' => 
    string
     'Forty What?' (length=11)
      public 'from' => 
    string
     'Joe' (length=3)
      public 'to' => 
    string
     'Jane' (length=4)
      public 'body' => 
    string
     '
      I know that's the answer -- but what's the question?
    ' (length=56)
    
    

     

  2. sha1()  哈希加密,用作签名,将字符串加密
  3. implode($arr) 将数组转化为字符串;
  4. sprintf($string,$num,$location); 按照$string模板,替换成$num\$location后输出模板;
     1 可能的格式值:
     2 %% - 返回一个百分号 %
     3 %b - 二进制数
     4 %c - ASCII 值对应的字符
     5 %d - 包含正负号的十进制数(负数、0、正数)
     6 %e - 使用小写的科学计数法(例如 1.2e+2 7 %E - 使用大写的科学计数法(例如 1.2E+2 8 %u - 不包含正负号的十进制数(大于等于 0 9 %f - 浮点数(本地设置)
    10 %F - 浮点数(非本地设置)
    11 %g - 较短的 %e 和 %f
    12 %G - 较短的 %E 和 %f
    13 %o - 八进制数
    14 %s - 字符串
    15 %x - 十六进制数(小写字母)
    16 %X - 十六进制数(大写字母)
    17 
    18 栗子:
    $string="<xml>
    <ToUserName>%s</ToUserName>
    <FromUserName>%s</FromUserName>
    <CreateTime>%s</CreateTime>
    <MsgType>%s</MsgType>
    <Content>%s</Content>
    <MsgId>%s</MsgId>
    </xml>";

    $str1="第1个替换变量";
    $str2="第2个替换变量";
    $str3="第3个替换变量";
    $str4="第4个替换变量";
    $str5="第5个替换变量";
    $str6="第6个替换变量";
    $res=sprintf($string,$str1,$str2,$str3,$str4,$str5,$str6);
    var_dump($res);

    //返回值;
    // string '<xml>
    // <ToUserName>第1个替换变量</ToUserName>
    // <FromUserName>第2个替换变量</FromUserName>
    // <CreateTime>第3个替换变量</CreateTime>
    // <MsgType>第4个替换变量</MsgType>
    // <Content>第5个替换变量</Content>
    // <MsgId>第6个替换变量</MsgId>
    // </xml>' (length=362)

     5.unset销毁变量【可以用到循环判断销毁对应元素】

  5.  1  //奖品概率
     2         $proArr = array(
     3             '1' => $config["level1_prob"],
     4             '2' => $config["level2_prob"],
     5             '3' => $config["level3_prob"],
     6             '4' => $config["level4_prob"],
     7             '5' => $config["level5_prob"],
     8             '6' => $config["level6_prob"],
     9             '7' => $config["level7_prob"]
    10         );
    11 
    12         //奖品库存
    13         $proCount = array(
    14             '1' => $config["level1_store"],
    15             '2' => $config["level2_store"],
    16             '3' => $config["level3_store"],
    17             '4' => $config["level4_store"],
    18             '5' => $config["level5_store"],
    19             '6' => $config["level6_store"],
    20             '7' => $config["level7_store"]
    21         );
    22        
    26         foreach ($proCount as $key=>$value){
    27             if ($value<=0){
    28                 unset($proArr[$key]);
    29             }
    30         }

     6.将格式化的日期转化为时间戳

    1 1. UNIX时间戳转换为日期用函数: date() 
    2 一般形式:date('Y-m-d H:i:s', 1156219870); 
    3 2. 日期转换为UNIX时间戳用函数:strtotime() 
    4 一般形式:strtotime('2010-03-24 08:15:42'); 

    7.将一个一位数组从开始到结束,每4个一组,组合成新的二维数组;

    1         $arr=array('aa','bb','cc','dd','11','22','33','44','55','66','77');
    2         $j=count($arr)/4;
    3         for($i=0;$i<$j;$i++)
    4         {
    5             $data[] = array_slice($arr, $i *4 ,4);
    6         }   
    7 
    8 从数组的第0*4个元素开始取出,并仅返回4个元素:然后放到新的数组里;
    输出结果:
    array(3) {
      [0]=&gt;
      array(4) {
        [0]=&gt;
        string(2) "aa"
        [1]=&gt;
        string(2) "bb"
        [2]=&gt;
        string(2) "cc"
        [3]=&gt;
        string(2) "dd"
      }
      [1]=&gt;
      array(4) {
        [0]=&gt;
        string(2) "11"
        [1]=&gt;
        string(2) "22"
        [2]=&gt;
        string(2) "33"
        [3]=&gt;
        string(2) "44"
      }
      [2]=&gt;
      array(3) {
        [0]=&gt;
        string(2) "55"
        [1]=&gt;
        string(2) "66"
        [2]=&gt;
        string(2) "77"
      }
    }
        

    8.对数组进行字典排序

    将微信传过来的timestamp ,nonce,token按子典排序
                $timestamp=$_GET['timestamp'];
                $nonce=$_GET['nonce'];\
                $token=mytoken;微信后台设置的token;
                $array=array($timestamp,$nonce,$token);
                sort($array);对数组进行字典排序;

    9.将数组转化拼接为字符串

    1 $arr = array('Hello','World!','I','love','Shanghai!');
    2 echo implode(" ",$arr);

     

 

posted @ 2016-11-30 15:57  上了发条的兔子  阅读(213)  评论(0编辑  收藏  举报