PHP数组——数组正则表达式数组预定义数组
Posted WORSHIP亚萨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP数组——数组正则表达式数组预定义数组相关的知识,希望对你有一定的参考价值。
正则表达式
1.替换
$s = "hello5world"; $s = preg_replace("/\d/","#",$s); echo $s; //输出结果为hello#world,数字被替换成了#。 //第一个数字是被替换的内容,"/\d/"表示正则表达式的数字。 //第二个参数是要用什么来替换。 //第三个参数是要操作的数组。
2.拆分
//$s = "hello5world";//$attr = preg_split("/\d/",$s); //按照正则表达式拆分 //var_dump($arr); //第一个参数是按照什么拆分,第二个参数是拆分哪个字符串。
3.匹配
//$s = "he8llo5wor6ld"; //$arr = array(); //preg_match("/\d/",$s,$arr); //匹配满足正则的第一个字符串,在这匹配出的是8(8)是字符串中的第一个数字。 //preg_match_all("/\d/",$s,$arr); //匹配所有满足正则的字符串,匹配出的是所有的数字(8、5、6)。 //第一个参数是按照什么匹配 //第二个参数是匹配的数组 //第三个参数是另一个数组,也可以是空的数组,匹配完以后的数组放在此数组中。
数组
1.遍历数组
(1)for循环遍历,只能遍历索引数组
//$attr = array("aa","bb","cc","dd");
/*for($i = 0;$i<count($attr);$i++)
{ echo $attr[$i]."<br>"; } */
(2)foreach遍历,关联和索引都可以遍历.
//$attr = array("aa","bb","cc","dd"); /*foreach($attr as $v) { echo $v."<br>"; }*/ //只能遍历出值 /*foreach($attr as $k=>$v) { echo $k."--".$v."<br>"; }*/ //可以遍历出key和value $attr = array(1,2,3,4,5); foreach($attr as $k=>$v) { if($v == 3) { unset($attr[$k]);//删除一个元素或者删除一个变量,不能直接unset($v),因为遍历时是把数组里面的数字3复制给$v的,删除的是复制的,而不是数组里面的。 } } $attr = array_values($attr);//重新索引,删除数组元素里面的3以后,索引值变为0,1,3,4.重新索引后变为0,1,2,3。 var_dump($attr); //在其它语言中,使用foreach遍历数组里面的元素时,不能在foreach里面删除或者添加元素。只有php里面可以。
预定义数组
1.$GLOBALS引用全局作用域中的全局变量
var_dump$GLOBALS()//$GLOBALS是一个数组,是系统自定义的,无法修改的,必须大写。代表全局变量的数组。
2.$_SERVER是服务器的信息
3.$_ENV代表环境变量
4.$_GET代表的是用户用_GET方式传递的数据
5.$_POST代表的是用户用post方式传递的数据
method的方式和获取的方式要对应。var_dump($_POST)
6.$_FILES;是关于表单提交文件的。
<form action="text.php" method="post" enctype="multipart/form-date">//提交文件时需要写上enctype属性,提交方式要用post
7.$_SESSION
会话控制,保存用户登录信息的机制。如果登录上一个页面以后一定的时间没有操作,刷新页面后会要求重新登录,这就是_SESSION的效果。它有一个固定的时间,过后登录信息会清除。_SESSION存储登录信息存储在服务器上。_SESSION的安全性会更好。
8.$_COOKIE
会话控制,保存用户登录信息的机制。如果登录上一个页面以后一定的时间没有操作,刷新页面后不需要重新登录,这就是_COOKIE的效果。_COOKIE存储登录信息存储在硬盘上。_COOKIE的安全性不如_SESSION。
其它常用函数 1.in_array( , );判断某一个值是不是在这个数组里面存在,括号里面有两个参数,第一个参数是是否存在的值,第二个参数是检查的数组。 2.array_reverse();翻转函数,括号里面写要翻转的数组。 3.array_unique();删除重复值,去重。 4.unset($attr[0]);删除数组里的某个值。 5.array_values();重新索引。一般和删除一起使用。 6.array_merge();合并数组,括号里面填写n个要合并的数组。 7.array_push();往数组里面添加一个值,添加位置在末尾。
数组例子
1.取数组里面的内容做下拉列表
方法一:(嵌入PHP代码) $attr = array(//定义一个数组,用二维数组。 array("n001","汉族"), array("n002","回族"), array("n003","满族"), array("n004","维吾尔族") ); <select> <option>所有</option> <?php /*foreach($attr as $v) { echo "<option>{$v[1]}</option>"; }*/ ?> </select> 方法二:(不需要嵌入PHP代码) $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.二维数组遍历到表格
$attr = array( array("code","name","民族","年龄"), array("001","张三","汉族","23"), array("002","李四","回族","34"), array("003","王五","维吾尔族","53"), array("004","宋六","壮族","26") ); echo "<table border=‘1px‘>"; for($i=0;$i<count($attr);$i++) { echo "<tr>"; for($j=0;$j<count($attr[$i]);$j++) { echo "<td>".$attr[$i][$j]."</td>"; } echo "</tr>"; } echo "</table>";
以上是关于PHP数组——数组正则表达式数组预定义数组的主要内容,如果未能解决你的问题,请参考以下文章