以下为学习孔祥盛主编的《PHP编程基础与实例教程》(第二版)所做的笔记。

数组指针函数

1. key() 函数

程序:

  1. <?php
  2. $interests[2] = "music";
  3. $interests[5] = "movie";
  4. $interests[1] = "computer";
  5. $interests[] = "software";
  6. var_dump(key($interests)); //int 2 //返回数组 arr 中"当前指针"所指元素的键名。
  7. ?>

输出:

  1. D:\wampServer\www\Apache服务器主目录\practise\例程.php:6:int 2

2. current() 函数

程序:

  1. <?php
  2. $interests[2] = "music";
  3. $interests[5] = "movie";
  4. $interests[1] = "computer";
  5. $interests[] = "software";
  6. var_dump(current($interests)); //string 'music' (length=5) //返回数组 arr 中“当前指针”所指元素的“值”
  7. ?>

输出:

  1. D:\wampServer\www\Apache服务器主目录\practise\例程.php:6:string 'music' (length=5)

3. next() 函数

程序:

  1. <?php
  2. $interests[2] = "music";
  3. $interests[5] = "movie";
  4. $interests[1] = "computer";
  5. $interests[] = "software";
  6. $second = next($interests);
  7. $third = next($interests);
  8. var_dump(key($interests)); //int 1
  9. echo "<br/>";
  10. var_dump(current($interests)); //string 'computer' (length=8)
  11. echo "<br/>";
  12. var_dump($second); //string 'movie' (length=5)
  13. echo "<br/>";
  14. var_dump($third); //string 'computer' (length=8)
  15. ?>

输出:

  1. D:\wampServer\www\Apache服务器主目录\practise\例程.php:8:int 1
  2.  
  3. D:\wampServer\www\Apache服务器主目录\practise\例程.php:10:string 'computer' (length=8)
  4.  
  5. D:\wampServer\www\Apache服务器主目录\practise\例程.php:12:string 'movie' (length=5)
  6.  
  7. D:\wampServer\www\Apache服务器主目录\practise\例程.php:14:string 'computer' (length=8)

4. end() 函数

程序:

  1. <?php
  2. $interests[2] = "music";
  3. $interests[5] = "movie";
  4. $interests[1] = "computer";
  5. $interests[] = "software";
  6. $end = end($interests);
  7. var_dump(key($interests)); //int 6
  8. echo "<br/>";
  9. var_dump(current($interests)); //string 'software' (length=8)
  10. echo "<br/>";
  11. var_dump($end); //string 'software' (length=8)
  12. ?>

输出:

  1. D:\wampServer\www\Apache服务器主目录\practise\例程.php:7:int 6
  2.  
  3. D:\wampServer\www\Apache服务器主目录\practise\例程.php:9:string 'software' (length=8)
  4.  
  5. D:\wampServer\www\Apache服务器主目录\practise\例程.php:11:string 'software' (length=8)

5. prev() 函数

程序:

  1. <?php
  2. $interests[2] = "music";
  3. $interests[5] = "movie";
  4. $interests[1] = "computer";
  5. $interests[] = "software";
  6. $end = end($interests);
  7. $prev = prev($interests);
  8. var_dump(key($interests)); //int 1
  9. echo "<br/>";
  10. var_dump(current($interests)); //string 'computer' (length=8)
  11. echo "<br/>";
  12. var_dump($end); //string 'software' (length=8)
  13. echo "<br/>";
  14. var_dump($prev); //string 'computer' (length=8)
  15. ?>

输出:

  1. D:\wampServer\www\Apache服务器主目录\practise\例程.php:8:int 1
  2.  
  3. D:\wampServer\www\Apache服务器主目录\practise\例程.php:10:string 'computer' (length=8)
  4.  
  5. D:\wampServer\www\Apache服务器主目录\practise\例程.php:12:string 'software' (length=8)
  6.  
  7. D:\wampServer\www\Apache服务器主目录\practise\例程.php:14:string 'computer' (length=8)

6. reset() 函数

程序:

  1. <?php
  2. $interests[2] = "music";
  3. $interests[5] = "movie";
  4. $interests[1] = "computer";
  5. $interests[] = "software";
  6. $end = end($interests);
  7. $first = reset($interests);
  8. var_dump(key($interests)); //int 2
  9. echo "<br/>";
  10. var_dump(current($interests)); //string 'music' (length=5)
  11. echo "<br/>";
  12. var_dump($end); //string 'software' (length=8)
  13. echo "<br/>";
  14. var_dump($first); //string 'music' (length=5)
  15. ?>

输出:

  1. D:\wampServer\www\Apache服务器主目录\practise\例程.php:8:int 2
  2.  
  3. D:\wampServer\www\Apache服务器主目录\practise\例程.php:10:string 'music' (length=5)
  4.  
  5. D:\wampServer\www\Apache服务器主目录\practise\例程.php:12:string 'software' (length=8)
  6.  
  7. D:\wampServer\www\Apache服务器主目录\practise\例程.php:14:string 'music' (length=5)

7. each() 函数

程序:

  1. <?php
  2. $interests[2] = "music";
  3. $interests[5] = "movie";
  4. $interests[1] = "computer";
  5. $interests[] = "software";
  6. $each = each($interests);
  7. print_r( $each ); //Array ( [1] => music [value] => music [0] => 2 [key] => 2 )
  8. echo "<br/>";
  9. echo current($interests); //movie
  10. ?>

输出:

说明:

  PHP 7.2 废弃了each()方法。

数组的遍历

使用list()语言结构、each()函数和循环语句可以实现

程序:

  1. <?php
  2. $fruits = array( 'orange', 'apple', 'banana');
  3. $colors = array( 'orange', 'red', 'yellow' );
  4. $temp = array_combine( $fruits,$colors );
  5. do{
  6. $key = key($temp);
  7. $value = current($temp);
  8. echo $key." => ".$value."<br/>";
  9. }while( next($temp) );
  10. ?>

输出:

  1. orange => orange
  2. apple => red
  3. banana => yellow

5_PHP数组_3_数组处理函数及其应用_3_数组指针函数的更多相关文章

  1. [C++基础]那些容易被混淆的概念:函数/数组指针-指针函数/数组,类/函数模板-模板类/函数

    函数指针-指针函数 函数指针的重点是指针.表示的是一个指针,它指向的是一个函数.eg: int (*pf)(); 指针函数的重点是函数.表示的是一个函数,它的返回值是指针.eg: int* fun() ...

  2. CPP-基础:函数指针,指针函数,指针数组

    函数指针 函数指针是指向函数的指针变量. 因而“函数指针”本身首先应是指针变量,只不过该指针变量指向函数.这正如用指针变量可指向整型变量.字符型.数组一样,这里是指向函数.如前所述,C在编译时,每一个 ...

  3. c语言指针函数与函数指针

    例一:指针函数 指针函数是指带指针的函数,即本质是一个函数.函数返回类型是某一类型的指针 类型标识符    *函数名(参数表) int *f(x,y); 首先它是一个函数,只不过这个函数的返回值是一个 ...

  4. C++中的指针,指针函数和函数指针

    指针是C或C++中的一大难题,因此弄懂指针对C和C++的学习有很大的帮助,最近一直在研究指针,因此写一篇随笔把心得记录一下. 简单来说指针也是一种变量,只不过指针变量所存储的不是我们直观上看到的,而是 ...

  5. C/C++指针函数和函数指针

    一.指针函数 当一个函数声明其返回值为一个指针时,实际上就是返回一个地址给调用函数,以用于需要指针或地址的表达式中. 格式: 类型说明符 * 函数名(参数) 当然了,由于返回的是一个地址,所以类型说明 ...

  6. 【编程开发】 C与C++中的关于函数指针的强制类型转换与指针函数的关系

    [编程开发] C与C++中的关于函数指针的强制类型转换与指针函数的关系 标签: [编程开发] [VS开发] 声明:引用请注明出处http://blog.csdn.net/lg1259156776/ 以 ...

  7. 指针函数(Pointer Function)和函数指针(Pointer to Function或Function Pointer)

    一.指针函数 1.解释:指针函数很好理解:简单来说,就是一个返回指针的函数,本质是一个函数.如: int fun(int x,int y);    //这是一个普通函数的声明,返回值是一个int类型, ...

  8. 5_PHP数组_3_数组处理函数及其应用_5_数组遍历语言结构

    以下为学习孔祥盛主编的<PHP编程基础与实例教程>(第二版)所做的笔记. 数组遍历语言结构 1. foreach ( array as $value ) 程序: <?php $int ...

  9. php extract 函数的妙用 数组键名为声明为变量,键值赋值为变量内容

    extract 函数的妙用 数组键名为声明为变量,键值赋值为变量内容 它的主要作用是将数组展开,键名作为变量名,元素值为变量值,可以说为数组的操作提供了另外一个方便的工具

随机推荐

  1. 刷题记录:[CISCN2019 总决赛 Day2 Web1]Easyweb

    目录 刷题记录:[CISCN2019 总决赛 Day2 Web1]Easyweb 一.涉及知识点 1.敏感文件泄露 2.绕过及sql注入 3.文件上传:短标签绕过php过滤 刷题记录:[CISCN20 ...

  2. Tomcat启动时,控制台和IDEA控制台中文乱码解决方案

    Tomcat启动时 控制台中文乱码 cmd控制台 IDEA控制台 解决方案 cmd乱码 打开Tomcat目录下的apache-tomcat-8.5.47\conf\logging.properties ...

  3. Git创建与合并分支,撤销修改

    git回滚到指定版本并推送到远程分支(撤销已提交的修改,并已push) git reset --hard <commit ID号> git push -f git回滚到上一个版本并推送到远 ...

  4. Spark2.x(五十五):在spark structured streaming下sink file(parquet,csv等),正常运行一段时间后:清理掉checkpoint,重新启动app,无法sink记录(file)到hdfs。

    场景: 在spark structured streaming读取kafka上的topic,然后将统计结果写入到hdfs,hdfs保存目录按照month,day,hour进行分区: 1)程序放到spa ...

  5. linux hexdump使用

    # hexdump -h hexdump: invalid option -- 'h' Usage: hexdump [options] file... Options: -b one-byte oc ...

  6. 027_MacOs上如何将多页word打印到一个页面上

    工作中需要把word的多页面内容打印到同一张A4纸,所以就想了办法,首先word导出到pdf. 然后使用MacOs默认的PDF阅读器进行多页打印. 操作如下: 文件-打印布局选择每张纸需要打印的页数左 ...

  7. pm2 工具来管理 node 服务端

    如下: nodeServer.js 'use strict'; const http = require('http'); const server = http.createServer(funct ...

  8. Shell流程控制语句while

    while语法格式: while 判断条件 do 命令 done while语句流程控制图: 实例: [root@youxi1 ~]# vim a.sh #!/bin/bash i=0 while [ ...

  9. 快排的时间复杂度O(n) = nlogn计算过程

    转载:https://www.cnblogs.com/javawebsoa/p/3194015.html 本文以快速排序为例,推导了快排的时间复杂度nlogn是如何得来的,其它算法与其类似. 对数据D ...

  10. IDEA中MyBatis插件的安装及使用

    这个插件的好处就在于能自动关联mapper类与xml,让你可以快速的互相跳转,还能帮助你做简单的排错. 安装方法: 1.File→Settings→Plugins,输入mybatis plugin,本 ...