PHP开发笔记系列(九)- 数组(二)

     昨晚临睡前写完了《PHP开发笔记系列(九)- 数组(一)》 ,今晚继续写《PHP开发笔记系列(九)- 数组(二)》 ,Php数值键数组、关联键数组、多维数组的创建、提取、数组类型判断、输出数组后,今天研究一下Php数组的后续内容。


    1. 输出数组

    在日产的Php程序开发中,数组是使用频率最高的数据类型,例如从数据库根据查询条件将指定的数据通过关联键数组类型返回,那么要查看程序返回的关联键数组结果内容是否正确和遗漏,可用的方法可以通过debug的方式,在variable视图查看返回的结果的内容,如果想通过更快的方式检查结果,那么可以使用print_r()函数。


    print_r()函数可以将数组的内容输出到屏幕上,从而完成内容测试和检查。print_r()函数接受一个变量,并将其内容发送给标准输出,成功时返回TRUE,否则返回FALSE。


    如果给print_r()传第二个参数,TRUE or  FALSE,若TRUE,那么print_r()将把输出返回给调用者,而不是发送到标准输出。

 

 

file: print_r.php
url: http://localhost:88/array/print_r.php
<?php

    $data[0] = '1st value'; 
    $data[1] = '2nd value'; 
    $data[2] = '3rd value';

    print_r($data);
    
    echo "<br/>";
    echo "========================";
    echo "<br/>";
    
    $return = print_r($data, TRUE);
    
    echo $return;
?>

 

    2. 添加元素到数组头

    在数值键数组头添加元素,使用array_unshift(),添加后,数组中的数值键会自动更新,代码如下:

 

file: unshift.php
url: http://localhost:88/array/unshift.php
<?php
    $data[0] = '1st value'; 
    $data[1] = '2nd value'; 
    $data[2] = '3rd value';

    array_unshift($data, '0th value');
    
    foreach ($data as $key => $value) {
        echo $key.":".$value."<br/>";
    }
    
?>

 

    在关联键数组头添加元素,由于关联键数组中的元素没有先后顺序,所以在访问时,顺序不太重要,因此很少用到array_unshift()函数。


    3. 添加元素到数组尾

    在数值键数组尾添加元素,使用array_push(),添加后,数组中的数值键会自动更新,代码如下:

 

file: push.php
url: http://localhost:88/array/push.php
<?php

    $data[0] = '1st value'; 
    $data[1] = '2nd value'; 
    $data[2] = '3rd value';

    array_push($data, '4th value');
    
    foreach ($data as $key => $value) {
        echo $key.":".$value."<br/>";
    }
    
?>

 

    4. 删除数组头元素

    在数值键数组头删除元素,使用array_shift(),添加后,数组中的数值键会自动更新,代码如下:

   

file: shift.php
url: http://localhost:88/array/shift.php
<?php

    $data[0] = '1st value'; 
    $data[1] = '2nd value'; 
    $data[2] = '3rd value';

    array_shift($data);
    
    foreach ($data as $key => $value) {
        echo $key.":".$value."<br/>";
    }
    
?>
 

 

    5. 删除数组尾元素

    在数值键数组尾删除元素,使用array_pop(),添加后,数组中的数值键会自动更新,代码如下:

 

file: pop.php
url: http://localhost:88/array/pop.php
<?php

    $data[0] = '1st value'; 
    $data[1] = '2nd value'; 
    $data[2] = '3rd value';

    array_pop($data);
    
    foreach ($data as $key => $value) {
        echo $key.":".$value."<br/>";
    }
    
?>

 

    6. 搜索数组

    in_array()函数在数组中搜索一个特定值,如果找到该值返回TRUE,否则返回FALSE。

 

file: in_array.php
url: http://localhost:88/array/in_array.php
<?php

    $data[0] = '1st value'; 
    $data[1] = '2nd value'; 
    $data[2] = '3rd value';

    $flag = in_array('2nd value', $data);
    
    echo $flag ? "TRUE" : "FALSE";
    
?>

 

    in_array()函数还接受第三个参数,该参数强制在搜索时考虑类型。


    7. 搜索关联键数组键

    arrar_key_exists()函数在一个数组中查找指定的键值,存在则返回TRUE,否则返回FALSE。

 

file: array_key_exists.php
url: http://localhost:88/array/array_key_exists.php
?php

    $map['1st'] = '1st value'; 
    $map['2nd'] = '2nd value'; 
    $map['3rd'] = '3rd value';

    $flag = array_key_exists('1st', $map);
    
    echo $flag ? "TRUE" : "FALSE";
    
?>

 

    8. 搜索关联数组值

    array_search()函数在一个数组中搜索一个指定的值,如果存在返回TRUE,否则返回FALSE。

 

file: array_search.php
url: http://localhost:88/array/array_search.php
<?php

    $map['1st'] = '1st value'; 
    $map['2nd'] = '2nd value'; 
    $map['3rd'] = '3rd value';

    $flag = array_search('2nd value', $map);
    
    echo $flag ? "TRUE" : "FALSE";
    
?>
 

    9. 获取所有数组键

    array_keys()函数返回一个数组,这个数组包含所有的键值。

   

file: array_keys.php
url: http://localhost:88/array/array_keys.php
<?php

    $map['1st'] = '1st value'; 
    $map['2nd'] = '2nd value'; 
    $map['3rd'] = '3rd value';

    $keys = array_keys($map);
    
    print_r($keys);
        
?>

 

    10. 获取所有数组值

    array_values()函数返回一个数组,这个数组包含所有的值。

 

file: array_values.php
url: http://localhost:88/array/array_values.php
<?php

    $map['1st'] = '1st value'; 
    $map['2nd'] = '2nd value'; 
    $map['3rd'] = '3rd value';

    $values = array_values($map);
    
    print_r($values);
        
?>
 

     今晚再次写到这里,明晚继续。


    本文地址:http://ryan-d.iteye.com/blog/1566532

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值