10月23日上午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)                #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>-->
时间: 2024-10-29 15:59:44

10月23日上午PHP数组的相关文章

高级:2015年10月23日作业答案

高级学员:2015年10月23日作业一.业务流程管理与重组1.流程管理的本质与核心是什么: 流程管理的核心是流程,流程管理的本质就是构造卓越的业务流程.2.流程管理与BPR的区别: 流程管理是以一种规范化的构造端到端的卓越业务流程为中心,以持续的提高组织业务绩效为目的的系统化方法.与业务流程重组的定义相似.流程管理的思想包含了BPR,但比BPR的概念更广泛,更适合现实需要.3.业务流程改进的过程和方法中,分析问题用哪2个图:寻找原因用什么图. 分析问题采用头脑风暴法.矩阵图法,寻找原因用鱼骨图法

高级学员:2015年10月23日作业

高级学员:2015年10月23日作业一.业务流程管理与重组1.流程管理的本质与核心是什么:2.流程管理与BPR的区别:3.业务流程改进的过程和方法中,分析问题用哪2个图:寻找原因用什么图.4.流程的分析与设计方法是哪六条(只答小标题):5.BPR的首要问题是什么:6.BPR的实施会引起企业哪3个方面的变化.二.知识管理1.对于项目组织来说,什么是知识.2.隐性知识的共享方法有哪4条:三.项目整体绩效评估1.什么是3E审计:2.霍尔从哪3个维度考察系统工程.3.用什么分别解决:确定性.可测定的不确

2016年01月MVP开始申请了~[截止时间:10月23日]

51CTO与微软中国合作长期为用户提供申请"微软最有价值专家"的平台希望有兴趣.资历的朋友以及正在朝这个方向努力的朋友能够积极参与只要您想参与我们将为您向微软推荐 微软最有价值专家MVP一年评选4次分别为每年的1月.4月.7月.10月.2016年1月的MVP申请截止时间是2015年10月23日. 申请MVP的午饭请下载2016年1月MVP申请表填好后发送到[email protected].我们会在每次MVP申请开始时把用户提交的申请表格推荐到微软中国相关部门 [调整说明]目前的奖励类

银在当下:10月23日多头蹦跶过欢闪腰了

行情回顾: 昨日的银价应该是出现明显的技术性回调,最高上行只3471一线承压回落最低下行至3387,适中还是处于我们银价3380-3480这个震荡区间范围之内,相对银价的方向来讲是一个弱势下行的调整. 技术面: 从日线上来看,银价在向上反弹试探布林中轨一线后承压回落,最终收取一根大阴,将原来多头反攻的优势打压,同时布林也是继续收口,短期均线指标在3440处粘合聚集,附图指标MACD的金叉动能有所减弱,但RSI指标粘合向上,KDJ指标确是在50附近向下发散.因此,银在当下认为日内依旧维持着弱势震荡

5月23日上午学习日志

2017年5月23上午把昨天记忆的英语单词的多种词意用自己组句的方法联系起来再记忆一遍,然后再联系真题学10个考研高频词汇,然后再复习昨天的词汇,感觉有些背了忘,于是忘了再背,好累,听外教讲授Eclipse 的课程.

2017年2月23日上午学习日志

2017年3月23上午复习了高等数学,继续看张宇高等数学18讲书中第二讲极限与连续第二部分函数极限的计算,做书上例题巩固数学知识.

10月24日上午PHP面向对象

定义数组 $attr = array(); $attr[0] = 1; 索引数组 $attr = array(1,2,3,4); 关联数组 $attr = array("code"=>"p001","name"=>"张三"); 二维数组 $attr = array( array(), array() ); 数组遍历 for循环遍历 for($i=0;$i<count($attr);$i++) count($a

关于10月23日#10的六道题的心得与感悟

今天连着#9做到了#10.先说最近的#10吧. 第一题: 暴力模拟,没有什么算法或思想可言.就是锻炼代码能力,提高对细节的注意. 第二题: 一开始直接想到了前缀和,算出前缀和后,枚举起点终点,算出差值,判断是否能整除.结果可想而知,直接TLE.后来抓耳挠腮,几番思索无果,果断看题解,将前缀和加以处理,先用前缀和模上d,在遍历一次数组,当Mod == 0 或 当前Mod在之前出现过一次 , 就在结果上+1. 第三题:分饼.有f+1个人分n块饼吃,每块饼都是圆柱体,高全为1,给出每块饼的半径.求每个

2016年10月13日--二维数组、多维数组、推箱子

数组:相同数据类型的元素按照一定的顺序进行排列的 二维数组 int[,] array = new int[3, 2]; int[,] array = new int[3, 4] { { 1, 2, 3, 4 }, { 1, 2, 3, 4 }, { 1, 2, 3, 4 } }; int[,] array = new int[3, 4] {{ 1, 2, 3, 4 }, { 1, 2, 3, 4 }, { 1, 2, 3, 4 } }; [3, 2]   3表示有三个一维数组 [3, 2]