zoukankan      html  css  js  c++  java
  • 回顾,数组开始

    • 回顾
    #可变函数
    <?php 

    echo "<pre>";
    echo "这是一个可变函数"."<br/>";
    function iwant()
    {
    echo "想开着五菱车带小松鼠去郊外玩耍";
    }
    $var = 'iwant';
    $var();
    ?>

    return返还给包含文件,echo输出到程序缓存,或者理解为交给Apache

    • 数组

    数组就是内存里一块连续的内存空间(堆空间)

    对于C语言,数组必须指定长度,并且指定存储的数据类型,否则报错,

    而php则可以无限长下去?而且数据没有类型限制;数组索引可以为数组或者字符串

    显示数组语法$arr = array()

    <?php 
     $arr = array();
     echo "<pre>";
     $arr[]='陈培昌';
     $arr[]='徐晓冬';
     var_dump($arr);
    ?>结果如下:

    数组本质是变量,访问的时候就是直接使用变量,但是因为数组元素有多个,而系统没有办法直接区分到底用户是访问的哪一个,所以需要用户在访问数组的时候,使用数组下标(键名)

    语法:$数组变量[下标]

    数值下标:$arr[数值]

    字符串下标:$arr[‘字符串’]

    在内存开辟数组的流程:首先在内存的堆中开闭一块区域,然后在栈中建立数组变量,建立两者的关系,然后在堆区中放入数组的值

    <?php
    $arr = array();
    echo "<pre>";
    $arr[]='陈培昌';
    $arr[]='徐晓冬';
    $arr[]='程劲';
    $arr[]='厉智';

    $count = count($arr);
    print_r("数组的长度是:".$count."<br/>");
    $i=0;
    for($i=0;$i<$count;$i++)
    {
    echo "$arr[$i]"." ";
    }
    echo "<pre>";
    foreach($arr as $key=>$value)
    {
    echo "键名:".$key."对应的值:".$value."<br/>";
    }
    ?>

     foreach循环遍历原理:关键词,指针偏移,找到键值对,分别赋值给key变量和value变量,其实严格地说数组在堆开辟的不是连续的一片空间,而是链表这样的数据结构,就像依次报数那样,直到最后,条件失败,结束循环体。

  • 相关阅读:
    hdu5834 Magic boy Bi Luo with his excited tree 【树形dp】
    POJ2152 Fire 【树形dp】
    POJ1848 Tree 【树形dp】
    hdu3586 Information Disturbing 【树形dp】
    BZOJ4557 [JLoi2016]侦察守卫 【树形dp】
    BZOJ4000 [TJOI2015]棋盘 【状压dp + 矩阵优化】
    BZOJ1487 [HNOI2009]无归岛 【仙人掌dp】
    BZOJ4002 [JLOI2015]有意义的字符串 【数学 + 矩乘】
    洛谷P3832 [NOI2017]蚯蚓排队 【链表 + 字符串hash】
    3-3 银行业务队列简单模拟
  • 原文地址:https://www.cnblogs.com/saintdingspage/p/9938261.html
Copyright © 2011-2022 走看看