php数组

$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);

数组定义
$attr = array();           定义一个空的数组
$attr = array(1,2,3,4); 定义一个有值的数组
$attr[0]="aa";
$attr[1]="bb";
var_dump($attr);

数组分为两种
1.索引数组
$attr = array(1,2,3,4,5);
print_r($attr);
2.关联数组
$attr = array("code"=>101,"name"=>"张三","sex"=>"男");
print_r($attr);
echo $attr["name"];

遍历数组
$attr = array("aa","bb","cc","dd");

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

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

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

foreach($attr as $v){echo $v."<br>";}foreach($attr as $k=>$v){echo $k."---".$v."<br>";}

3.使用each()和list()           结合遍历
var_dump(each($attr));    取数组里面当前指针指向的元素
list($a,$b,$c,$d)=$attr;    写在等号左边的,将数组里面的元素交给一组变量,数组必须是索引数组

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


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

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

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

var_dump($_FILES);

举例:

$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>";

<select>

<option>所有</option>

<?php

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

?>
</select>

原文地址:https://www.cnblogs.com/gaojunshan/p/5989164.html