PHP数组

按照正则表达式替换

$s = "hello5world";
$s = preg_replace("/d/","#",$s);//第一个是正则表达式,第二个是要替换的内容,第三个是被操作的字符串
echo $s;//输出值为hello#world

按照正则表达式拆分

$s = "hello5world";
$attr = preg_split("/d/",$s);//根据数字拆分
echo $attr;//输出值为hello world

定义数组

$attr = array();//定义一个空的数组
$attr = array(1,2,3,4);//定义一个有值的数组

一、数组分为两种:

1.索引数组,用索引来取

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

2.关联数组,取值的时候用名字(key)来取

$attr = array("code"=>101,"name"=>"张三","sex"=>"男");//“code”称为key,101称为value
print_r($attr);
echo $attr["name"];

3.赋值定义数组

$attr[0]="aa";
$attr[1]="bb";

二、遍历数组

1.for循环遍历,只能遍历索引数组

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

for($i=0;$i<count($attr);$i++) //count数组长度
{
    echo $attr[$i]."<br>";
}

2.foreach遍历,关联、索引都支持

//foreach索引遍历
$attr
= array("aa","bb","cc","dd"); foreach($attr as $v) { echo $v."<br>"; }
//foreach关联遍历
$attr
= array("aa","bb","cc","dd"); foreach($attr as $k=>$v) { echo $k."---".$v."<br>"; }

3.使用each()和list()结合遍历

each()默认指向数组的第一个元素,取数组内当前指针指向的元素,每执行一次指针自动加1;

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

list()是PHP里唯一一个写在等号左边的函数方法,将数组里面的元素交给一组变量,数组必须是索引数组;

$attr = array("aa","bb","cc","dd");
list($a,$b,$c,$d) = $attr;
echo $d;

使用each() 和 list()结合用while()循环将数组遍历;

list($k,$v) = each($attr) //这句话的意思是:将数组$attr里第一个元素取出扔给$k 和 $v

$attr = array("aa","bb","cc","dd");
while(list($k,$v) = each($attr))
{
echo "{$k}--{$v}<br>";
}

4.使用指针遍历,do......while....先执行后循环

//current($attr); //取当前指针指向的元素的值
//echo key($attr); //取当前指针指向的元素的key
//next($attr); //将指针向后调一个
//prev($attr); //将指针向前调一个
//end($attr); //将指针指向最后
//reset($attr); //将指针重置
//echo current($attr);

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

do
{
    echo current($attr);
    echo key($attr);
}
while(next($attr))

预定义数组,是系统定义好了的,只能拿来用,不能修改
global;//声明为全局变量
$GLOBALS;//引用全局作用域中可用的全局变量
$_SEVER;//服务器和执行环境信息
$_ENV;//环境变量
$_GET;//HTTP GET变量,用户使用get方式传递的数据
$_POST;//HTTP POST变量,用户使用post方式传递的值
$_REQUEST;//HTTP Request变量
$_FILES;//HTTP 文件上传变量 
$_SESSION//Session变量,存到服务器,安全性高,对服务器造成压力
$_COOKIE;//HTTP Cookies,存到硬盘,安全性低,
$attr = array(
 array("n001","汉族"),
array("n002","回族"),
array("n003","满族"),
arry("n004","维吾尔族")   
);
<select>
<option>所有</option>
<?php
foreach($attr as $v)
{
echo "<option>{$v[1]}</option>";
?>
}
</select>
$attr = array(
 array("n001","汉族"),
array("n002","回族"),
array("n003","满族"),
arry("n004","维吾尔族")   
);
echo "<select>";
echo "<option>所有的</option>";
foreach($attr ax $v)
{
echo "<option>{$v[1]}</option>";
}
echo "</select>";

作业:做一个info的二维数组,将info的信息显示在一张表格里

原文地址:https://www.cnblogs.com/wells33373/p/5989179.html