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

WBOY
풀어 주다: 2016-06-13 13:26:18
원래의
886명이 탐색했습니다.

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

?

?

?

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿