PHP数组的定义、初始化和数组元素的显示实现代码


Posted in PHP onNovember 05, 2016

从ASP初入门到PHP,感觉到PHP的强大之一就是内置函数的丰富,比如先前学习的PHP日期时间函数,读写文件的相关函数等都无不表明了PHP的更专业、更令用户的使用得心应手。

一开始我对PHP函数的丰富功能很兴奋,随着对越来越多近乎变态多的函数接触之后,突然联想到了ASP内置函数的稀少,要完成某项特殊功能,常须自定义函数,随着应用的在增多,自己居然也有了一套常用的函数库。然而现在在PHP中,这些功能早已被标准化、规范化而浓缩为内置函数直接使用,曾经的ASP开发人员成为了PHP的普通用户。
但转念一想,这些函数、这些大量PHP函数的存在,至少说明了PHP的更专业;同时,在我们日常PHP程序处理时应该是很快捷易用的吧,这让开发人员不再为些基础功能、细节功能而去自定义函数,把主要的精力集中在组建更强大的程序模块上。所以,我更加坚定了一看PHP函数到底的信念,不过我想在以后的开发过程中,PHP函数手册应该属于随身书了。

当然,关于ASP和PHP孰优孰劣的争论就无需多讨论,学习并了解能让自己了解真相。

言正传,PHP函数太多,防止遗忘,所以每次看完一类函数后我都做个总结和收集工作,方便起见就写篇日志。

1,数组的定义和初始化

什么是数组?数组是一种编程结构,它是一个存储一组或一系列数值的变量。
比如人口普查时对个人的身份登记,如姓名、性别、民族、出生等就可作为数组。
PHP中创建数组使用array()结构来定义,比如:

$people=array('name','sex','nation','brith');

而如何显示数组中的各元素的值,我们则是使用从0开始的索引,索引号在变量名称后的方括号中,比如:

<?php
$people=array('name','sex','nation','birth');
echo $people[2];
?>

输出的$people[2]就是显示的是nation(索引第一项从0计数)。

PHP除了支持数字索引数组以外,还支持相关数组。所谓相关数组,就是可自定义关键字来替换不直观的数字索引,比如:

<?php
$peoples=array('xm'=>'name','xb'=>'sex','mz'=>'nation','cs'=>'birth');
echo $peoples['cs'];
?>

使用相关数组使得输出的选择很直观(不需要预先计算索引号然后输出),定义的关键字和值之间使用“=>”符号定义。

根据PHP数组元素的两种显示方式,还可以如变量一样无需array()声明和初始化,直接自动创建数字。比如

$people[0]='name';
$people[1]='sex';
$people[2]='nation';
$people[3]='brith';

或者

$peoples['xm']='name';
$peoples['xb']='sex';
$peoples['mz']='nation';
$peoples['cs']='birth';

该数组的大小根据所增加元素的多少动态的变化。

2,数组元素的显示

在如上使用的无论$people[2]也好,无论$peoples['cs']也好,都只是输出已知的明确位置的数组元素值,如何快速输出所有或部分的数组元素,使用循环语句无疑是最快的方法。

<?php
$people=array('name','sex','nation','birth');
for ($i=0;$i<4;$i++)
  echo "$people[$i] ";
?>

除了使用了解循环次数的for循环以外,还可以使用对循环次数无须要求的foreach语句。

<?php
$people=array('name','sex','nation','birth');
foreach($people as $xiangmu)
  echo $xiangmu;
?>

$xiangmu变量将保存数组中的各元素值,依次显示出来。当然,为了输出的数据能间隔区分,可在数组元素之后输出空格:
echo $xiangmu." ";
注:英文句号(.)可将字符串连接合并成新的字符串

PHP 相关文章推荐
php基础知识:类与对象(2) 自动加载对象
Dec 13 PHP
php 仿Comsenz安装效果代码打包提供下载
May 09 PHP
php入门学习知识点八 PHP中for循环基本应用之九九乘法口绝表
Jul 14 PHP
PHP fopen 读取带中文URL地址的一点见解
Sep 25 PHP
php中设置index.php文件为只读的方法
Feb 06 PHP
根据中文裁减字符串函数的php代码
Dec 03 PHP
destoon整合ucenter后注册页面不跳转的解决方法
Jun 21 PHP
PHP fastcgi模式上传大文件(大约有300多K)报错
Sep 28 PHP
PHP性能分析工具XHProf安装使用教程
May 13 PHP
laravel 中如何使用ajax和vue总结
Aug 16 PHP
基于Laravel实现的用户动态模块开发
Sep 21 PHP
如何用PHP实现分布算法之一致性哈希算法
May 26 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
Nov 05 #PHP
PHP利用超级全局变量$_GET来接收表单数据的实例
Nov 05 #PHP
PHP利用超级全局变量$_POST来接收表单数据的实例
Nov 05 #PHP
PHP中用mysqli面向对象打开连接关闭mysql数据库的方法
Nov 05 #PHP
PHP实现一个简单url路由功能实例
Nov 05 #PHP
浅谈php中的循环while、do...while、for、foreach四种循环
Nov 05 #PHP
php foreach如何跳出两层循环(详解)
Nov 05 #PHP
You might like
mysql_num_rows VS COUNT 效率问题分析
2011/04/23 PHP
解析CodeIgniter自定义配置文件
2013/06/18 PHP
php向js函数传参的几种方法
2014/08/10 PHP
深入解析PHP的Yii框架中的缓存功能
2016/03/29 PHP
php mysql获取表字段名称和字段信息的三种方法
2016/11/13 PHP
PHP编程文件处理类SplFileObject和SplFileInfo用法实例分析
2017/07/22 PHP
CutePsWheel javascript libary 控制输入文本框为可使用滚轮控制的js库
2010/02/07 Javascript
JavaScript中的一些定位属性[图解]
2010/07/14 Javascript
让JavaScript拥有类似Lambda表达式编程能力的方法
2010/09/12 Javascript
javascript实现表格增删改操作实例详解
2015/05/15 Javascript
JS实现新浪微博效果带遮罩层的弹出框代码
2015/10/12 Javascript
Bootstrap3制作搜索框样式的方法
2016/07/11 Javascript
Node.js中的require.resolve方法使用简介
2017/04/23 Javascript
vue-resource + json-server模拟数据的方法
2017/11/02 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
javascript使用链接跨域下载图片
2019/11/01 Javascript
js实现圆形菜单选择器
2020/12/03 Javascript
Python实现备份文件实例
2014/09/16 Python
深入分析python中整型不会溢出问题
2018/06/18 Python
python实现从文件中读取数据并绘制成 x y 轴图形的方法
2018/10/14 Python
[原创]Python入门教程5. 字典基本操作【定义、运算、常用函数】
2018/11/01 Python
详解Python正则表达式re模块
2019/03/19 Python
Python语法分析之字符串格式化
2019/06/13 Python
pytorch神经网络之卷积层与全连接层参数的设置方法
2019/08/18 Python
英国Zoro工具:手动工具,电动工具和个人防护用品
2016/11/02 全球购物
NFL官方在线商店:NFLShop
2020/07/29 全球购物
JSF面试题:如何管量web层中的Bean,用什么标签。如何通过jsp页面与Bean绑定在一起进行处理?
2012/10/05 面试题
行政助理求职自荐信
2013/10/26 职场文书
英文简历中的自我评价用语
2013/12/09 职场文书
《我爱祖国》演讲稿1000字
2014/09/26 职场文书
个人务虚会发言材料
2014/10/20 职场文书
2015毕业生实习工作总结
2014/12/12 职场文书
2015年毕业实习工作总结
2014/12/12 职场文书
幼儿园教研工作总结2015
2015/05/12 职场文书
《金钱的魔力》教学反思
2016/02/20 职场文书
vue-cropper组件实现图片切割上传
2021/05/27 Vue.js