`
jslfl
  • 浏览: 311276 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

php编程基础(四)数组

    博客分类:
  • php
阅读更多
数组

数组本质
    管理和操作一组变量,成批处理;
    数组是复合类型;数组中可以存储任意长度的数据,也可以存储任意类型数据;
    数组可以完成其它语言数据结构的功能(链表,队列,栈,集合类)

索引数组:下标(键)是顺序整数作为索引
关联数组:下标用字符串作为索引

声明方式
直接赋值
a.如果下标不给出,会从0开始顺序索引;
b.如果给出索引下标,下一个下标会从最大下标开始增1;
c.如果后面出现前面已有下标,如果是赋值操作,就是为前面已有元素重新赋值;
d.索引和关联混合声明时,索引和关联互不影响。
$user[] = 1;
$user[] = "zhangsan";

$user["age"]=23;
用array()函数
a.默认是索引数组
b.如果为关联数组和索引数组指定下标,使用 键=>值

$user = array("id"=>1,"name"=>"lisi",99=>"jianjie",100,"nan");

print_r($arr)//打印组


多维数组可以用索引下标和关联下标混合访问


数组遍历
使用for循环
    php中不是首选方式,因为要求数组必须是索引数组,而且下标还必须连续。

foreach循环(php首选方式)
    foreach(数组变量 as 变量值){循环体}

    foreach(数组变量 as 下标变量=>值变量){}

while() list() each()组合循环
each()函数
    需要一个数组作为参数
    返回一个数组,0,1,key,value四个下标(固定的)
0和key下标是当前参数数组元素的键;
1和value下标是当前对数组元素的值;
默认当前元素就是第一个元素,每执行一次后就会将当前元素向后移动,如到最后一个元素再执行这个函数,则返回false.
list()函数
list() = array();而要将一个数组赋值给这个函数
数组中的元素个数,要和list()函数中的参数个数相同
数组中的每个元素值会赋值list()函数中的每个参数,list()将每个参数转为变量
list()只能接收索引数组,按索引下标的顺序。

list($name,$age,$sex)= array("zhangli",13,"nan");
echo $name."<br>".$age."<br>".$sex;

数组内部指针控制函数
next(数组)下移
prev(数组)上移
reset(数组)回到第一个
end(数组)到最后一个
current(数组)指针当前所在元素值
key(数组)指针当前所在元素的索引

预定义数组
自动全局变量

1.包含了来自WEB服务器,客户端,运行环境和用户输入的数据;
2.全局范围内自动生效,都可以直接使用这些数组;
3.因为比较特别,用户不能自定义这些数组

$_GET 接收url方式提交到脚本的变量
$_POST 接收http post方式提交到脚本的变量
$_REQUEST 接收get,post和cookie机制提交到脚本的变量,但该数组不值得信任,尽量不使用
$_FILES 接收http post文件上传
$_COOKIE
$_SESSION
$_ENV  执行环境提交至脚本的变量
$_SERVER 由WEB服务器设定的,或直接当前脚本执行环境相关联
$GLOBALS 当前脚本有效的变量都在这,数组键名为全局变量的名称

get,post,request中的数据可以在脚本中直接以变量方式取出,但这样不安全,因为管理员可以把这个功能禁用(php.ini=>register_globals = off)。都可以通过全局数组得到对应数据。



数组处理函数

一,key/value操作有关的函数
array_values()
array_keys()
in_array()
array_key_exists()
array_flip() 交换数组中的键和值
array_reverse() 返回一个单元顺序相反的数组
二,统计数组元素个数和惟一性
count() sizeof()
array_count_values 统计数组中所有的值出现的次数
array_unique 移除数组中重复的值
三,使用回调函数处理数组的函数
array_filter() 用回调函数过滤数组中的单元
array_wlk() 数组中的每个成员应用用户函数
array_map() 将回调函数作用到给定数组的单元上
四,数组排序函数
    1.简单数组排序
sort() rsort()
    2.根据键名对数组排序
ksort() krsort()
    3.根据元素的值对数组排序
asort() arsort()
    4.根据自然数排序
natsort() natcasesort()
    5.根据用户自定义规则排序
usort() uasort() uksort()
    6.多维排序
array_multisort()

五,拆分、合并、分解、接合的数组函数
array_slice()
array_splice()
array_combine()
array_merge() 合并数组,索引重新生成
array_intersect() 交集
array_diff() 差集
六,数组与数据结构的函数
栈,后进先出
入栈:
直接赋值,推荐这种方式,效率比下面这种高
array_push(数组变量,值)
出栈:
$var = array_pop(数组变量);

对列(先进先出),链表
array_unshift(数组),压入
array_shift(数组)弹出对头元素
unset(数组[key]),弹出中间某个

七,其它操作函数
array_rand()数组中随机下标
shuffle() 随机重新排列数组元素
array_sum()
range()
分享到:
评论

相关推荐

    PHP编程基础-数组

    该PPT介绍PHP编程基础知识中数组的内容,帮助有需要的朋友了解如何使用数组以及常用函数等知识。

    PHP编程网络大讲堂

    本书全面介绍PHP编程知识,全书共分4篇16章,内容包括:PHP基础入门篇(第1~4章),介绍PHP环境的搭建、PHP配置文件和指令、数据类型和流程控制语句,以及PHP下进行面向对象编程等知识;PHP数据处理篇(第5~10章)...

    PHP编程基础与实例教程

    想学PHP的童鞋们,这个课件是PHP的基础 目录 第 1 章 PHP入门 ...第 5 章 PHP数组 第 6 章 PHP的数据采集 第 7 章 自定义函数 第 8 章 MySQL数据库 第 9 章 PHP与MySQL数据库 第 10 章 新闻发布系统的开发...

    PHP编程基础--数据类型转换.ppt

    * PHP编程基础 --------数据类型转换 课程内容 自动类型转换 强制类型转换 一、自动类型转换 自动类型转换是指数据类型由PHP自动转换,使用时需注意以下几点: 1.其他类型转换为布尔类型 当其他类型需要转换为布尔...

    PHP编程新手自学手册随书光盘源码部分

    《PHP编程新手自学手册》内容提要:PHP是当今使用最广的Web编程语言之一,在项目开发领域占据重要的地位。本书循序渐进、由浅入深地讲解了PHP开发的核心技术,并通过具体实例的实现过程,演练了各个知识点的具体使用...

    PHP动态网站开发

    主要内容包括:配置php开发环境、php语言基础、数组与函数、字符串与正则表达式、构建php互动网页、php文件编程、php图像处理、mysql数据库管理、php数据库编程、会员管理系统设计。本书结构合理、论述准确、内容...

    史上最全PHP5基础精讲教程

    PHP网站开发编程中的特殊符号处理.doc PHP网站程序乱码问题解决方法.doc PHP表单处理.doc PHP语法-数组.doc PHP随机显示目录下图片的源码.doc strlen与mb_strlen字符串长度函数.doc strtok()函数实际应用.doc 文件...

    PHP超全局数组(Superglobals)介绍

    仔细查了下关于这方面的知识,发现PHP中这部分的基础知识掌握的不是很牢靠。 变量的作用域 提到PHP的超全局数组,就不能不说下变量的作用域。变量的作用域是任何一门编程语言中都有的概念,也是必须掌握的。关于PHP中...

    PHP简单实现合并2个数字键数组值的方法

    先要了解一个基础知识点:PHP合并数组+与array_merge的区别分析 &lt;?php /** * PHP合并2个数字键数组的值 * * @param array $arr1 * @param array $arr2 * @return array */ function new_array_merge($arr1...

    03《PHP经典编程265例》.zip

    包括PHP基础、函数、PHP流程控制语句、Web技术、MySQL数据库、PHP数据库编程、字符串高级处理、PHP数组应用、日期和时间的处理、图形图像处理、文件目录处理、面向对象编程、PDO数据库抽象层、Smarty模板、ThinkPHP...

    Shell 数组

    与大部分编程语言类似,数组元素的下标由0开始。 Shell 数组用括号来表示,元素用”空格”符号分割开,语法格式如下: array_name=(value1 ... valuen) 实例 #!/bin/bash # author:软件开发网 # url:...

    PHP7从入门到精通.zip

    分别介绍了PHP 7的基本概念、PHP服务器环境配置、PHP的基本语法、PHP的语言结构、字符串和正则表达式、数组、时间和日期、面向对象编程、错误处理和异常处理、PHP与Web页面交互、文件与目录操作、图形图像处理、...

    PHP从入门到精通 源码

    全书共分24章,包括初识PHP、PHP环境搭建和开发工具、PHP语言基础、流程控制语句、字符串操作、正则表达式、PHP数组、PHP与Web页面交互、PHP与JavaScript交互、日期和时间、Cookie与Session、图形图像处理技术、文件...

    精选的 PHP 代码片段和学习资料可以让你在 30 秒内学会

    只需阅读简短的代码示例,您就能快速掌握 PHP 的基础知识和高级技巧。例如,您可以学习如何使用内置函数处理字符串,比如字符串截取、替换、连接和格式化。您还可以了解如何创建和操作数组,包括排序、过滤和遍历...

    《PHP专业实例开发 》[PDF]

    本书是学习PHP编程的优秀参考书,其主要内容有:第1部分概述了PHP编程的基础知识,如PHP的安装和配置、变量、运算符和常量、控制结构、数组和函数、类的应用,并介绍了在线购物站点的创建过程:在第2部分到第6部分中...

    PHP从入门到精通.pdf-入门教程.CHM

    全书共分27章,包括初识.PHP、PHP环境搭建和开发工具、PHP语言基础、流程控制语句、字符串操作、正则表达式、PHP数组、PHP与Web页面交互、PHP与JavaScript交互、日期和时间、Cookie与Session、图形图像处理技术、...

    PHP程序设计第2版

    第21章 安全PHP编程 第22章 SQLite 第23章 PDO介绍 第24章 MySQL介绍 第25章 安装和配置MySQL 第26章 众多MySQL客户端 第27章 MySQL存储引擎和数据类型 第28章 保护MySQL的安全 第29章 PHP的MySQL扩展 第30章 PHP的...

    PHP PHP5.0

    PHP语言元素以及结构 编程规范、PHP语言变量、数据类型、类型转换、运算优先顺序 实际样例(8个) 3 中级篇 PHP流程控制 顺序结构 分支结构 循环结构 实际样例(13个) 3 PHP字符以及字符处理 字符处理 字符处理...

    php网络编程自学手册光盘源代码

    第1篇为起步篇(第1章~第8章),主要介绍PHP的发展及相关知识、PHP环境的安装与配置、PHP语言基础、流程控制语句、PHP与HTML表单、字符串和正则表达式,以及数组、日期和时间等内容;第2篇为提高篇(第9章~第15章...

    PHP从入门到精通

    、PHP数组、PHP与Web页面交互、PHP与JavaScript交互、日期和时间、Cookie与 Session、图形图像处理技术、文件系统、面向对象、PHP加密技术、MySQL数据 库基础、phpMyAdmin图形化管理工具、PHP操作MySQL数据库、...

Global site tag (gtag.js) - Google Analytics