首页 > 代码库 > PHP正则表达式;数组:for()遍历、 foreach ()遍历、each()list()组合遍历;指针遍历

PHP正则表达式;数组:for()遍历、 foreach ()遍历、each()list()组合遍历;指针遍历

正则表达式:
$s = "he8llo5wor6ld";
$s = preg_replace("/\d/","#",$s);   //按照正则表达式替换
$attr = preg_split("/\d/",$s);   //按照正则表达式拆分
$arr = array();
preg_match("/\d/",$s,$arr);   //匹配满足正则的第一个字符串
preg_match_all("/\d/",$s,$arr);   //匹配所有满足正则的字符串
var_dump($arr);

数组:1:索引数组 2:遍历数组

1、索引数组

例:$attr=array(1,2,3,4,5);   

print_r ($attr);

2、关联数组:取值用key(code)  echo(attr["code"]);

例:$attr=array("code"=>101,"name"="张三",sex=>"男");

print_r($attr);

3、遍历数组:最主要、最常见的是foreach遍历,因为索引和关联数组都可以遍历

①for循环遍历:适用于遍历索引数组,关联数组不能遍历

例:

$attr = array("aa","bb","cc","dd");

for($i=0;$i<count($attr);$i++)

{

  echo $attr[$i]."<br>";

}

②foreach遍历:索引和关联都可以遍历   ★★★★

例1:

$attr = array("aa","bb","cc","dd");

foreach($attr as $v)      //遍历数组$attr,把每个值value给定义的变量$v,$v就是数组里的每一个元素

{

  echo $v."<br>";

}

例2:

        $k           $v

$attr=array("code"=>101,"name"="张三",sex=>"男");

foreach($attr as $k=>$v)   //把数组的名称(code)赋值给$k,value给$v(101)

{

  echo $k."随便给一个连接符号".$v."<br>";

}

③使用each()和list()结合遍历:取数组里面当前指针指向的位置,默认指针在第一个,用一下指针走到下一个

例:

1.$attr = array("aa","bb","cc","dd");

var_dump(each($attr));   //取数组里面当前指针指向的元素

2.list($a,$b,$c,$d)=$attr;  //写在等号左边的,将数组里面的元素交给一组变量,数组必须是索引数组

例:

while(list($k,$v) = each($attr))

{

  echo "{$k}-{$v}<br>";

}

④使用指针遍历

1.current($attr);    取当前指针指向的元素的值

2.key($attr);     区当前指针指向的元素的key(索引)

3.next($attr);    将指针向后调一个

4.prev($attr);    将指针向前调一个

5.end($attr);      将指针调到最后

6.reset($attr); 将指针重置

例1:

while(next($attr))

{

  echo current($attr);

  echo key($attr);

}

例2:

do{

  echo current($attr);

  echo key($attr);

}

while(net($attr))

例1:

$attr = array(

  array("n001","汉族"),

  array("n002","回族"),

  array("n003","满族"),

  array("n004","维吾尔族")

); 

echo "<select>";

echo"<option>民族</option>";

foreach($attr as $v)

{

  echo "<option>{$v[1]}</option>";

}
echo"</select>";

例2:

<body>

 

$attr = array(

 

  array("n001","汉族"),

 

  array("n002","回族"),

 

  array("n003","满族"),

 

  array("n004","维吾尔族")

); 

 

<?php
        
        foreach($attr as $v)
        {
            echo "<option>{$v[1]}</option>";
        }
?>

</body>

PHP正则表达式;数组:for()遍历、 foreach ()遍历、each()list()组合遍历;指针遍历