php遍历百万级数组,php处理十万级数组

本文目录一览:

php遍历数组

输入汉字太麻烦,你也不粘贴文本让大家可以粘贴,我用字符代替文本,代码如下:

?php

$arr=array(

array(‘G10′,’htc’,100),

array(‘NSS’,’诺基亚’,200),

array(‘盖世3′,’三星’,300),

array(‘iphone’,’apple’,500),

array(‘anycall’,’三星’,700),

);

$arrPhone=array();

foreach ($arr as $itm) if ($itm[1]==’三星’) $arrPhone[]=$item[0];

print_r($arrPhone);

?

php中的数组遍历的几种方式

?php//使用for循环遍历$arr2=array(array(“张三”,”20″,”男”),array(“李四”,”25″,”男”),array(“王五”,”19″,”女”),array(“赵六”,”25″,”女”));echo “table border=2 bordercolor=redtrtd姓名/tdtd年龄/td gt;td性别/td/tr”;for($i=0;$i4;$i++){echo “tr”;for($j=0;$j3;$j++){ echo “td”; echo $arr2[$i][$j]; echo “/td”;}echo “/tr”;echo “”;}echo “/table”;?//使用foreach遍历 ?php$arr = array(‘one’=array(‘name’=’张三’,’age’=’23’,’sex’=’男’), ‘two’=array(‘name’=’李四’,’age’=’43’,’sex’=’女’), ‘three’=array(‘name’=’王五’,’age’=’32’,’sex’=’男’), ‘four’=array(‘name’=’赵六’,’age’=’12’,’sex’=’女’));foreach($arr as $k=$val){ echo $val[‘name’].$val[‘age’].$val[‘sex’].””;}echo “p”;??php$arr = array(‘one’=array(‘name’=’张三’,’age’=’23’,’sex’=’男’), ‘two’=array(‘name’=’李四’,’age’=’43’,’sex’=’女’), ‘three’=array(‘name’=’王五’,’age’=’32’,’sex’=’男’), ‘four’=array(‘name’=’赵六’,’age’=’12’,’sex’=’女’));foreach($arr as $key=$value){foreach($value as $key2=$value2){ echo $value2;}echo “”;}?

如何利用php数组对百万数据进行排重

如果你已经使用了一段时间PHP的话,那么,你应该已经对它的数组比较熟悉了——这种数据结构允许你在单个变量中存储多个值,并且可以把它们作为一个集合进行操作。

经常,开发人员发现在PHP中使用这种数据结构对值或者数组元素进行排序非常有用。PHP提供了一些适合多种数组的排序函数,这些函数允许你在数组内部对元素进行排列,也允许用很多不同的方法对它们进行重新排序。在这篇文章中我们将讨论该排序中最重要的几个函数。

简单排序

首先,让我们来看看最简单的情况:将一个数组元素从低到高进行简单排序,这个函数既可以按数字大小排列也可以按字母顺序排列。PHP的sort()函数实现了这个功能,如Listing A所示:

Listing A

?php

 $data = array(5,8,1,7,2);

 sort($data);

 print_r($data);

 ?

输出结果如下所示:

Array ([0] = 1

[1] = 2

[2] = 5

[3] = 7

[4] = 8

)

php数组遍历类与用法示例

本文实例讲述了php数组遍历类与用法。分享给大家供大家参考,具体如下:

?php

class

scanArray{

public

$arr;

public

$where;

private

$str;

public

function

scan($arr,$where=”array”){

$this-arr

=

$arr;

$this-where

=

$where;

foreach($this-arr

as

$k=$v){

if(is_array($v)){

$this-where

=

($this-where).”[{$k}]”;

$this-scan($v,$this-where);

}else{

$this-str

.=

$this-where.”[{$k}]=”.$v.’br

/’;

}

}

return

$this-str;

}

function

__destruct(){

unset($this-arr);

unset($this-where);

}

}

$a

=

array(‘g’=”a”,’vv’=array(“b”=”b”,”l”=”c”,”xx”=array(“e”,”g”)));

$ah

=

new

scanArray();

$b

=

$ah-scan($a);

echo

$b;

运行结果:

array[g]=a

array[vv][b]=b

array[vv][l]=c

array[vv][xx][0]=e

array[vv][xx][1]=g

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数组(Array)操作技巧大全》、《php排序算法总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《php字符串(string)用法总结》及《PHP常用遍历算法与技巧总结》

希望本文所述对大家PHP程序设计有所帮助。

您可能感兴趣的文章:PHP遍历数组的方法汇总PHP

数组遍历方法大全(foreach,list,each)PHP

数组遍历foreach语法结构及实例PHP中多维数组的foreach遍历示例php实现遍历多维数组的方法PHP中使用foreach()遍历二维数组的简单实例PHP遍历数组的三种方法及效率对比分析PHP实现的操作数组类库定义与用法示例PHP数组操作类实例PHP数组生成XML格式数据的封装类实例

PHP遍历数组的方法汇总

今天有个朋友问我一个问题php遍历数组的方法,告诉她了几个。顺便写个文章总结下,如果总结不全还请朋友们指出

第一、foreach()

foreach()是一个用来遍历数组中数据的最简单有效的方法。

?php

$urls=

array(‘aaa’,’bbb’,’ccc’,’ddd’);

foreach

($urls

as

$url){

echo

“This

Site

url

is

$url!

br

/”;

}

?

显示结果:

This

Site

url

is

aaa

This

Site

url

is

bbb

This

Site

url

is

ccc

This

Site

url

is

ddd

第二、while()

list(),each()配合使用。

?php

$urls=

array(‘aaa’,’bbb’,’ccc’,’ddd’);

while(list($key,$val)=

each($urls))

{

echo

“This

Site

url

is

$val.br

/”;

}

?

显示结果:

This

Site

url

is

aaa

This

Site

url

is

bbb

This

Site

url

is

ccc

This

Site

url

is

ddd

第三、for()运用for遍历数组

?php

$urls=

array(‘aaa’,’bbb’,’ccc’,’ddd’);

for

($i=

0;$i

count($urls);

$i++){

$str=

$urls[$i];

echo

“This

Site

url

is

$str.br

/”;

}

?

显示结果:

This

Site

url

is

aaa

This

Site

url

is

bbb

This

Site

url

is

ccc

This

Site

url

is

ddd

有时候有人也在问这几种遍历数组的方法哪个更快捷些呢,下面做个简单的测试就明白了

===========

下面来测试三种遍历数组的速度

===========

一般情况下,遍历一个数组有三种方法,for、while、foreach。其中最简单方便的是foreach。下面先让我们来测试一下共同遍历一个有50000个下标的一维数组所耗的时间。

?php

$arr=

array();

for($i=

0;

$i

50000;

$i++){

$arr[]=

$i*rand(1000,9999);

}

function

GetRunTime()

{

list($usec,$sec)=explode(“

“,microtime());

return

((float)$usec+(float)$sec);

}

######################################

$time_start=

GetRunTime();

for($i=

0;

$i

count($arr);

$i++){

$str=

$arr[$i];

}

$time_end=

GetRunTime();

$time_used=

$time_end-

$time_start;

echo

‘Used

time

of

for:’.round($time_used,

7).'(s)br

/br

/’;

unset($str,

$time_start,

$time_end,

$time_used);

######################################

$time_start=

GetRunTime();

while(list($key,

$val)=

each($arr)){

$str=

$val;

}

$time_end=

GetRunTime();

$time_used=

$time_end-

$time_start;

echo

‘Used

time

of

while:’.round($time_used,

7).'(s)br

/br

/’;

unset($str,

$key,

$val,

$time_start,

$time_end,

$time_used);

######################################

$time_start=

GetRunTime();

foreach($arr

as$key=

$val){

$str=

$val;

}

$time_end=

GetRunTime();

$time_used=

$time_end-

$time_start;

echo

‘Used

time

of

foreach:’.round($time_used,

7).'(s)br

/br

/’;

?

测试结果:

Used

time

of

for:0.0228429(s)

Used

time

of

while:0.0544658(s)

Used

time

of

foreach:0.0085628(s)

经过反复多次测试,结果表明,对于遍历同样一个数组,foreach速度最快,最慢的则是while。从原理上来看,foreach是对数组副本进行操作(通过拷贝数组),而while则通过移动数组内部指标进行操作,一般逻辑下认为,while应该比foreach快(因为foreach在开始执行的时候首先把数组复制进去,而while直接移动内部指标。),但结果刚刚相反。原因应该是,foreach是PHP内部实现,而while是通用的循环结构。所以,在通常应用中foreach简单,而且效率高。在PHP5下,foreach还可以遍历类的属性。

以上所述就是本文的全部内容了,希望大家能够喜欢。

PHP遍历数组的几种方法

PHP中遍历数组有三种常用的方法:

一、使用for语句循环遍历数组;

二、使用foreach语句遍历数组;

三、联合使用list()、each()和while循环遍历数组。

这三种方法中效率最高的是使用foreach语句遍历数组。从PHP4开始就引入了foreach结构,是PHP中专门为遍历数组而设计的语句,推荐大家使用。

希望回答对你有帮助,如果有疑问,请继续追问

原创文章,作者:MCZQ,如若转载,请注明出处:https://www.506064.com/n/146364.html

汽车小知识 小米SU7 今日油价 油耗计算器 电耗计算器 购置税计算器 贷款计算器 保险计算器 交通违章代码 体育新闻
(0)
MCZQMCZQ
上一篇 2024-10-29
下一篇 2024-10-29

相关推荐

  • java大全,java java

    本文目录一览: 1、java框架大全?(java都有那些框架) 2、我的世界java指令大全 3、JAVA指令大全 java框架大全?(java都有那些框架) java框架实在是太…

    编程 2024-10-14
  • 使用Python format格式化字符串

    一、格式化字符串的概念与用处 格式化字符串是将数据插入到字符串中的一种方法,用于处理输出数据的格式问题。一般的字符串中,使用+号连接不同的字符串,这样可读性和可维护性都很低,而使用…

    编程 2024-10-03
  • php使用exec调用bat的简单介绍

    本文目录一览: 1、如何用PHP运行批处理文件或者结束服务器进程 2、关于一个php exec函数的问题 bat文件能运行 但是接下来的字符串打印不出来 3、php exec 无法…

    编程 2024-10-26
  • 小成绩管理系统c语言,小成绩管理系统c语言报告

    本文目录一览: 1、C语言成绩管理系统 2、用C语言编程实现一个简单的学生成绩管理系统 3、用C语言编写一个学生成绩管理系统 4、用C语言编写一个简单的成绩管理系统 5、c语言成绩…

    编程 2024-10-27
  • CSS Box Sizing: Border Box

    一、概述 CSS的box-sizing属性用于控制元素的盒模型。默认情况下,元素的盒模型由content,padding,border以及margin四部分组成。 box-sizi…

    编程 2024-10-03
  • Python locals()

    函数locals()返回本地符号表的字典。符号表是一种数据结构,保存变量、函数、对象、类出现的细节,由编译器处理。符号表有两种类型:局部符号表和全局符号表。 全局符号表包含程序全局…

    编程 2024-10-03
  • catia国标标准件库,CATIA标准件库

    本文目录一览: 1、catia标准件库调用设计表图纸有感叹号怎么办 2、CATIA标准件库怎么安装 3、catia标准件库在哪个文件夹 4、求教:CATIA是否有标准零件库 cat…

    编程 2024-11-04
  • java单点登录,java单点登录框架

    本文目录一览: 1、在java中如何实现单点登陆 2、java web应用如何实现单点登录 3、关于javaWeb单点登录 在java中如何实现单点登陆 单点登录(Single S…

    编程 2024-10-04
  • java对象转json是序列化吗(jdk序列化和json序列化)

    本文目录一览: 1、redis 存储java对象是json字符串还是序列化 2、(JSON) 序列化和反序列化,这个是什么意思呀? 3、java怎么把对象序列化成.json文件 4…

  • 深入剖析curlbody

    一、curlbody简介 curlbody是一个开源的HTTP请求库,使得开发者可以在终端和脚本中进行HTTP请求。它支持多种协议,如HTTP、HTTPS、FTP、FTP上传等,并…

    编程 2024-10-04

发表回复

登录后才能评论