zoukankan      html  css  js  c++  java
  • 正则表达式和数组

    正则表达式
    斜杠代表定界符 ------/^$/

    $str = "好厉害18653378660了收到fhd刚打过15165339515阿道夫";
    $reg = "/(13[0-9]|14[5|7]|15[0|1|2|3|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])d{8}/";
    echo preg_replace($reg,"#",$str); //将字符串str按照正则表达式reg替换为# var_dump(preg_split($reg,$str)); //将字符串str按照正则表达式拆分 $arr = array();
    preg_match($reg,$str,$arr); //匹配字符串中满足正则表达式的第一个数据 var_dump($arr);
    preg_match_all($reg,$str,$arr); //匹配字符串中满足正则表达式的所有数据 var_dump($arr); preg_match_all($reg,$str,$arr); var_dump($arr);

    正则表达式百度:http://baike.baidu.com/link?url=YP3dqnsbO-Nb1TcPvK0w2C1fPvvni7Kp9DkbRusMQVWOPWAdz2Lv4lMedr6bRv3U4hj1FstyRQ_y3uiQsfx9R_

    数组
    定义

    1.定义数组方式
    $arr = array(1,2,3,4,5);

    2.赋值定义
    $arr1[0] = 5;
    $arr1[1] = 6;
    var_dump($arr1);

    数组分类
    1.索引数组
    $arr = array(1,2,3,4,5);
    echo $arr[0];
    2.关联数组
    $arr = array("code"=>5,"name"=>10);
    echo $arr["code"];

    php数组特点:可以存储任意类型的数据,长度可以变化,有关联数组

    $arr = array("aa","bb",5,5,"cc",10,10);
    $arr = array("a"=>10,"b"=>20,"c"=>"hello","d"=>30);
    //1.for循环遍历,不能遍历关联数组for($i=0;$i<count($arr);$i++)
    {
        echo $arr[$i]."<br>";
    }
    //2.foreach遍历,可以遍历关联数组
    foreach($arr as $value) //只取value值
    {
        echo $value."<br>";
    }
    foreach($arr as $key=>$value) //取key和value
    {
        echo $key."--".$value."<br>";
    }
    //3.each()函数
    var_dump(each($arr)); //返回数组里面元素的key和value
    var_dump(each($arr)); //每次取完值向下走一个指向下一个值
    //4.list()函数
    list($a,$b,$c,$d,$e) = $arr; //将数组里面的值分配给list函数里的变量
    echo $d;
    
    //5.each()和list()结合起来遍历数组
    while(list($key,$value) = each($arr))
    {
        echo "{$key}--{$value}<br>";
    }
    
    //6.指针
    var_dump(current($arr)); //取当前指针指向位置的value值
    echo key($arr); //取当前指针指向位置的key
    next($arr); //将指针向下调
    prev($arr); //将指针向上调
    end($arr); //将指针调向最后一个
    reset($arr);//将指针重置,指向第一个
    while(next($arr))
    {
        echo key($arr)."--".current($arr)."<br>";
    }
    
    do
    {
        echo key($arr)."--".current($arr)."<br>";
    }
    while(next($arr))

    $_GET $_POST 存储页面传过来的值

    //常用函数
    var_dump(in_array("ab",$arr)); //判断数组里面是否存在某个值
    var_dump(array_reverse($arr)); //翻转数组
    echo count($arr); //返回数组元素的个数
    $attr = array_unique($arr); //去重
    
    unset($attr[0]); //删除数组中的元素
    
    var_dump(array_values($attr)); //重新索引
    $attr = array(1,2,3,4);
    var_dump(array_merge($arr,$attr)); //合并数组
    array_push($arr,"dd"); //给数组追加一个元素
    var_dump($arr);

    二维数组
    $attr = array(
    array(1,2,3),
    array(4,5,6),
    array(7,8,9)
    );

    var_dump($attr);

    例子
    $attr = array(
    array('n001','汉族'),
    array('n002','苗族'),
    array('n003','回族'),
    array('n004','维吾尔族')
    );

    将数组中的内容以一个下拉列表的形式显示

    echo "<select>";
    foreach($attr as $value)
    {
    echo "<option value='{$value[0]}'>{$value[1]}</option>";
    }
    echo "</select>";
    //将二维数组中的内容显示为一张表
    $attr = array(
        array('p001','张三','男','汉族'),
        array('p002','李四','女','回族'),
        array('p003','王五','男','汉族'),
        array('p004','赵六','女','苗族')
    );
    
    echo "<table width='100%' border='1' cellpadding='0' cellspacing='0'>";
    
    echo "<tr><td>代号</td><td>姓名</td><td>性别</td><td>民族</td></tr>";
    
    for($i=0;$i<count($attr);$i++)
    {
        echo "<tr><td>{$attr[$i][0]}</td><td>{$attr[$i][1]}</td><td>{$attr[$i][2]}</td><td>{$attr[$i][3]}</td></tr>";
    }
    
    echo "</table>";
  • 相关阅读:
    安全和加密
    awk
    CentOS7练习
    CentOS7系统引导顺序以及排障
    网络配置
    RAID阵列搭建
    LVM逻辑卷
    java-web——第九课 request
    java-web——第八课 JSTL的显示格式
    java-web——第七课 JSTL
  • 原文地址:https://www.cnblogs.com/zhaimiaoer/p/5455133.html
Copyright © 2011-2022 走看看