主页 > 程序语言 > php foreach 遇到空数组怎么办

php foreach 遇到空数组怎么办

2022-12-12 22:04来源:m.sf1369.com作者:宇宇

一、php foreach 遇到空数组怎么办

PHP删除数组中空值的方法:

1.去掉数组的空值是都是强写foreach或者while的,利用这两个语法结构来删除数组中的空元素,简单代码如下:

foreach( $arr as $k=>$v){   

    if( !$v )   

        unset( $arr[$k] );   

}   

?>

这种方法的效率不是很高

2. array_filter函数的功能是利用回调函数来对数组进行过滤,一直都以为用回调函数才能处理,却没有发现手册下面还有一句,如果没有回调函数,那么默认就是删除数组中值为false的项目。代码如下:

$entry = array(   

             0 => 'foo',   

             1 => false,   

             2 => -1,   

             3 => null,   

             4 => ''  

          );   

print_r(array_filter($entry));   

?>输出值为:

Array   

(   

    [0] => foo   

    [2] => -1   

)这种方法的效率不错

二、PHP二维数组遍历问题

直接两个  foreach 是不符合楼主的需求的。

$arr=Array

(

    array('123332' => '123332','123333' => '123333'),

    array('123332' => 'Hockey Stick','123333' => 'Hockey Stick2'),

    array('123332' => 33.25 , '123333' => 33.25)

);

//$arr 为你要查询的数组

foreach($arr[0] as $key=>$val){

    //循环查找每一类数据。

    for($i=0;$i$narr[$val][]=$arr[$i][$key]; } } print_R($narr);

三、php foreach 二维数组用法

$a=array(array(0,1),array(2,3),array(4,5));

foreach ($a as $k => $v) {

if (is_int($v)) {

echo $v.'<br/>';

} else if (is_array($v)) {

foreach ($v as $k2 => $v2) {

echo $v2.' ';

}

echo '<br/>';

}

}

这里引用一下楼上的方法吧,就是双重循环读取每个数组中值

至于foreach中的$k跟$v是自定义变量,可以用任何合法变量名就可以了,$k代表的是数组中的键,$v代表的是数组中的值,第一个$v是循环出来的一维数组,$v2是一维数组中的每个值

相关推荐

哪些编程语言是函数式的

程序语言 2024-01-14

VB编程的函数详解

程序语言 2024-01-02

c语言扑克牌问题

程序语言 2023-12-28

iphone语言与地区有什么用?

程序语言 2023-12-19

C语言程序,怎么使用,

程序语言 2023-12-17

把word嵌入到C#程序中

程序语言 2023-11-26

HTML是不是编程语言?

程序语言 2023-11-17