4月25日 PHP正则表达式

<?php

//正则表达式

//斜杠代表定界符  /^$/

$str="好厉害18653378660了hi请勿嫁得好15165339515安徽dah矮冬瓜 拍行业大概啊好广东也欺负偶怕哈";

//手机号正则表达式:

$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按照reg拆分

$arr=array();

preg_match($reg,$str,$arr);//匹配字符串满足正则表达式的第一个数据

var_dump($arr);

preg_match_all($reg,$str,$arr);//匹配字符串满足正则表达式的所有数据

var_dump($arr);

//数组

//定义

//1.数组定义的方式

$arr=array(1,2,3,4,5);

//2.赋值定义

$arr1[0]=5;

$arr1[1]=6;

var_dump($arr1);

//数组分类

//1.索引数组

$arr=arry(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,每次取完值向下走一个指向下一个值

//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);//将指针调到最后一个

resert($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_reserve($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>";

?>

原文地址:https://www.cnblogs.com/dongqiaozhi/p/5435592.html