zoukankan      html  css  js  c++  java
  • PHP学习笔记(2) 数组相关函数.

    创建数组就不再说了  array()函数

    提取数组可以用list().

    测试数组元素 ,可以用is_array()

    接受一个参数,传进来的变量,如果变量是数组,返回true如果不是返回false.

    添加和删除数组元素

    数组的fifo和lifo

    先解释下什么是fifo和lifo

    删除元素与加入元素的顺序相同,称为先进先出,既first-in-first-out

    删除元素与加入元素的顺序相反,称为后进先出,既last-in-first-out

    相对应的对数组的操作

    • array_unshift()
    • int aray_unshift(array array,mixed variable [,mixed variable...])

    在数组头添加元素,所有已有的数值键都会相应的改变,以反映在数组中的新位置,关联键不受影响.

    例:

    <?php

    $words = array('a','b','c');

    print_r($words);

    //array([0]->a,[1]->b,[2]->c);

    array_unshift($words,'d');

    print_r($words);

    //array([0]->d,[1]->a,[2]->b,[3]->c);

    • array_shift()
    • mixed array_shift(array array)

    从数组头删除元素,删除并返回数组中找到的元素,结果是,如果使用的是数值键,则所有相应的值都会下移.如果使用的是关联键,数组不受影响.

    例:

    <?php
    $words = array('a','b','c');

    print_r($words);

    //array([0]->a,[1]->b,[2]->c);

    array_shift($words,'a');

    print_r($words);

    //array([0]->b,[1]->c);

    • array_push()
    • int array_push(array array ,mixed variable [,mixed variable...])

    从数组尾添加元素,将variable添加到数组的末尾,成功返回true 失败返回false.可以传递多个参数,作为输入,同时向数组压入多个变量.

    例:

    <?php
    $stack 
    = array("orange""banana"
    );
    array_push($stack"apple""raspberry"
    );
    print_r($stack
    );
    ?>

    本例将使 $stack 具有如下单元:

    Array ( [0] => orange [1] => banana [2] => apple [3] => raspberry )

    -------------------------------------------------------------

    上例摘自PHP手册.对于数组操作,使用$array[]=,可以增加效率.因为不需要调用函数.

    --------------------聪明的分割线-----------------------------

    • array_pop()
    • mixed array_pop(array target_array)

    从数组末尾删除元素并返回数组的最后一个元素.

    <?php
    $stack 
    = array("orange""banana""apple""raspberry"
    );
    $fruit array_pop($stack
    );
    print_r($stack
    );
    ?>

    经过此操作后,$stack 将只有 3 个单元:

    Array ( [0] => orange [1] => banana [2] => apple )

    ------------------------------------------------------

    上例摘自PHP手册

    -------------------------聪明的分割线-----------------

    自己的一些总结和观点.

    以上四个函数,有的时候可能用处很大,首先说返回值

    注意array_unshift()和array_push()的返回值应该是布尔型,但是手册上和相关图书上都标注说返回的是int型.这个值得思考.

    array_shift()和array_pop()两个函数不仅能够实现删除相关数组的元素,并且能够返回所删除的数组元素.先写到这里,后面还有很多.慢慢总结.

    -------------------分割线----------------------

    我以我心度乾坤,亦以我手执杖行.

     

  • 相关阅读:
    (Good Bye 2019) Codeforces 1270B Interesting Subarray
    (Good Bye 2019) Codeforces 1270A Card Game
    Codeforces 1283D Christmas Trees(BFS)
    Codeforces 1283C Friends and Gifts
    Codeforces 1283B Candies Division
    1095 Cars on Campus (30)
    1080 Graduate Admission (30)
    1099 Build A Binary Search Tree (30)
    1018 Public Bike Management (30)
    1087 All Roads Lead to Rome (30)
  • 原文地址:https://www.cnblogs.com/swordphp/p/2804986.html
Copyright © 2011-2022 走看看