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初学者最感迷茫的问题小结
Mar 27 PHP
浅析php中抽象类和接口的概念以及区别
Jun 27 PHP
解决PHP4.0 和 PHP5.0类构造函数的兼容问题
Aug 01 PHP
php+js实现图片的上传、裁剪、预览、提交示例
Aug 27 PHP
php图片缩放实现方法
Feb 20 PHP
thinkphp的c方法使用示例
Feb 24 PHP
PHP获取文件行数的方法
Jun 10 PHP
php文件上传你必须知道的几点
Oct 20 PHP
PHP快速生成各种信息提示框的方法
Feb 03 PHP
yii2多图上传组件的使用教程
May 10 PHP
PHP配置ZendOpcache插件加速
Feb 14 PHP
laravel框架创建授权策略实例分析
Nov 22 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
PHP模块 Memcached功能多于Memcache
2011/06/14 PHP
ThinkPHP权限认证Auth实例详解
2014/07/22 PHP
php邮件发送的两种方式
2020/04/28 PHP
Thinkphp无限级分类代码
2015/11/11 PHP
Zend Framework开发入门经典教程
2016/03/23 PHP
PHP校验15位和18位身份证号的类封装
2018/11/07 PHP
Yii框架使用PHPExcel导出Excel文件的方法分析【改进版】
2019/07/24 PHP
建议大家看下JavaScript重要知识更新
2007/07/08 Javascript
JavaScript 继承详解 第一篇
2009/08/30 Javascript
jquery实现简单的拖拽效果实例兼容所有主流浏览器
2013/06/21 Javascript
Javascript 修改String 对象 增加去除空格功能(示例代码)
2013/11/30 Javascript
给事件响应函数传参数的四种方式小结
2013/12/05 Javascript
动态创建script在IE中缓存js文件时导致编码的解决方法
2014/05/04 Javascript
jQuery中animate()的使用方法及解决$(”body“).animate({“scrollTop”:top})不被Firefox支持的问题
2017/04/04 jQuery
详解操作虚拟dom模拟react视图渲染
2018/07/25 Javascript
详解Vue2.5+迁移至Typescript指南
2019/08/01 Javascript
小程序瀑布流组件实现翻页与图片懒加载
2020/05/19 Javascript
js实现三角形粒子运动
2020/09/22 Javascript
全网小程序接口请求封装实例代码
2020/11/06 Javascript
解决VueCil代理本地proxytable无效报错404的问题
2020/11/07 Javascript
[03:53]2016国际邀请赛中国区预选赛第三日TOP10精彩集锦
2016/06/29 DOTA
跟老齐学Python之用while来循环
2014/10/02 Python
python批量查询、汉字去重处理CSV文件
2018/05/31 Python
windows系统中Python多版本与jupyter notebook使用虚拟环境的过程
2019/05/15 Python
python tqdm 实现滚动条不上下滚动代码(保持一行内滚动)
2020/02/19 Python
HTML5之tabindex属性全面解析
2016/07/07 HTML / CSS
荷兰超市:DEEN
2018/03/14 全球购物
捷克浴室和厨房设备购物网站:SIKO
2018/08/11 全球购物
美国沃尔玛网上超市:Walmart
2020/08/14 全球购物
Linux操作面试题
2012/05/16 面试题
《卖木雕的少年》教学反思
2014/04/11 职场文书
护理目标管理责任书
2014/07/25 职场文书
工作失误检讨书
2015/01/26 职场文书
社区扶贫帮困工作总结
2015/05/20 职场文书
小学运动会通讯稿
2015/07/18 职场文书
2015年党务工作者个人工作总结
2015/10/22 职场文书