PHP入门(四)
1.数组
1. array() 函数用于创建数组
在 PHP 中,有三种类型的数组:数值数组 - 带有数字 ID 键的数组 关联数组 - 带有指定的键的数组,每个键关联一个值 多维数组 - 包含一个或多个数组的数组
1.1数值数组:
这里有两种创建数值数组的方法:
1.1.1 自动分配 ID 键(ID 键总是从 0 开始):如:$cars = array("liang", "Tuhua", "hertmit");
1.1.2 人工分配 ID 键:如:$cars[0]="liang"; $cars[1]="Tuhua"; $cars[2]="hermit";
2.获取数组的长度 - count() 函数
count() 函数用于返回数组的长度(元素的数量)
如:
<?php
$cars[0] = "liang";
$cars[1] = "tu";
$cars[2] = "hua";
echo count($cars); //输出3
?>
遍历数组,依然可以使用for循环来遍历出来,如:
<?php
$cars[0] = "liang";
$cars[1] = "tu";
$cars[2] = "hua";
echo count($cars);
echo '<br/>';
$hua = count($cars);
for($a = 0; $a < $hua; $a++){
echo $cars[$a];
}
?>
3.关联数组
关联数组是使用您分配给数组的指定的键的数组。这里有两种创建关联数组的方法:
3.1 $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
3.2 $age['Peter']="35"; $age['Ben']="37"; $age['Joe']="43";
例:
<?php
$age = array("alis" => "18", "blis" => "25", "clis" => "9");
echo '小明的年龄是' . $age[alis] . '岁<br/>' . '大军的年龄是' . $age[blis] . '岁<br/>' . '宝宝的年龄是' . $age[clis] . '岁';
?>
上面两种方法创建的关联数组都是一样的。使用方法也是一样的。
4.遍历关联数组
遍历并打印关联数组中的所有值,您可以使用 foreach 循环
例:
<?php
$age = array("alis" => "18", "blis" => "25", "clis" => "9");
echo '小明的年龄是' . $age[alis] . '岁<br/>' . '大军的年龄是' . $age[blis] . '岁<br/>' . '宝宝的年龄是' . $age[clis] . '岁<br/>';
foreach($age as $x=>$x_value){
echo "key:" . $x . "<==>value:" . $x_value;
echo '<br/>';
}
?>
5.数组排序
数组中的元素可以按字母或数字顺序进行降序或升序排列。
5.1 数组排序函数
5.1.1 sort() - 对数组进行升序排列:
<?php
$arrays = array('liang', 'tuhua', 'hermit', 8);
sort($arrays); //将数组元素进行升序排列
print_r($arrays);
?>

5.1.2 rsort() - 对数组进行降序排列
<?php
$nub = array(4, 8, 5, 3, 14, 7, 2);
rsort($nub);
foreach($nub as $i=>$i_value){
echo $i_value . '<br/>';
}
?>

5.1.3 asort() - 根据关联数组的值,对数组进行升序排列
<?php
$gyqy = array('liang' => '48', 'tu' => '24', 'hua' => '85', 'herm' => '16');
asort($gyqy);//根据数组的值,对数组进行升序排列
foreach($gyqy as $i=>$i_value){
echo $i_value . '<br/>';
}
?>

5.1.4 ksort() - 根据关联数组的键,对数组进行升序排列
<?php
$gyqys = array('liang' => '48', 'tu' => '24', 'ahua' => '85', 'herm' => '16');
ksort($gyqys);//根据数组的键,对数组进行升序排列
foreach($gyqys as $k=>$k_value){
echo $k . ' ' . $k_value . '<br/>';
}
?>

5.1.5 arsort() - 根据关联数组的值,对数组进行降序排列
<?php
$gyqy = array('liang' => '48', 'tu' => '24', 'hua' => '85', 'herm' => '16');
arsort($gyqy);//根据数组的值,对数组进行降序排列
foreach($gyqy as $i=>$i_value){
echo $i_value . '<br/>';
}
?>

5.1.6 krsort() - 根据关联数组的键,对数组进行降序排列
<?php
$gyqys = array('liang' => '48', 'tu' => '24', 'ahua' => '85', 'herm' => '16');
krsort($gyqys);//根据数组的键,对数组进行降序排列
foreach($gyqys as $k=>$k_value){
echo $k . ' ' . $k_value . '<br/>';
}
?>

PHP入门(四)的更多相关文章
- 【原创】NIO框架入门(四):Android与MINA2、Netty4的跨平台UDP双向通信实战
概述 本文演示的是一个Android客户端程序,通过UDP协议与两个典型的NIO框架服务端,实现跨平台双向通信的完整Demo. 当前由于NIO框架的流行,使得开发大并发.高性能的互联网服务端成为可能. ...
- python学习笔记--Django入门四 管理站点--二
接上一节 python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...
- Swift语法基础入门四(构造函数, 懒加载)
Swift语法基础入门四(构造函数, 懒加载) 存储属性 具备存储功能, 和OC中普通属性一样 // Swfit要求我们在创建对象时必须给所有的属性初始化 // 如果没办法保证在构造方法中初始化属性, ...
- Thinkphp入门 四 —布局、缓存、系统变量 (48)
原文:Thinkphp入门 四 -布局.缓存.系统变量 (48) [控制器操作方法参数设置] http://网址/index.php/控制器/操作方法 [页面跳转] [变量调节器] Smarty变量调 ...
- DevExpress XtraReports 入门四 创建 Web 报表
原文:DevExpress XtraReports 入门四 创建 Web 报表 本文只是为了帮助初次接触或是需要DevExpress XtraReports报表的人群使用的,为了帮助更多的人不会像我这 ...
- 微服务(入门四):identityServer的简单使用(客户端授权)
IdentityServer简介(摘自Identity官网) IdentityServer是将符合规范的OpenID Connect和OAuth 2.0端点添加到任意ASP.NET核心应用程序的中间件 ...
- Spring Boot入门(四):开发Web Api接口常用注解总结
本系列博客记录自己学习Spring Boot的历程,如帮助到你,不胜荣幸,如有错误,欢迎指正! 在程序员的日常工作中,Web开发应该是占比很重的一部分,至少我工作以来,开发的系统基本都是Web端访问的 ...
- 脑残式网络编程入门(四):快速理解HTTP/2的服务器推送(Server Push)
本文原作者阮一峰,作者博客:ruanyifeng.com. 1.前言 新一代HTTP/2 协议的主要目的是为了提高网页性能(有关HTTP/2的介绍,请见<从HTTP/0.9到HTTP/2:一文读 ...
- Python爬虫入门四之Urllib库的高级用法
1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我们需要设置一些Headers 的属性. 首先,打开我们的浏览 ...
- C#基础入门 四
C#基础入门 四 方法参数 值参数:不附加任何修饰符: 输出参数:以out修饰符声明,可以返回一个或多个给调用者: 如果想要一个方法返回多个值,可以用输出参数来处理,输出参数由out关键字标识,如st ...
随机推荐
- Linux进程的虚拟内存
简介 用户进程的虚拟地址空间是Linux的一个重要的抽象:它为每个运行进程提供了同样的系统视图,这使得多个进程可以同时运行,而不会干扰到其他进程内存中的内容. 每个应用程序都有自己的线性地址空间,与所 ...
- 【PI系列】SAP IDOC发送状态03,PI没有收到消息的解决办法
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[PI系列]SAP IDOC发送状态03,PI没 ...
- cocos2dx基础篇(26) 单例模式
单例模式,说的通俗一点就是:创建某个类的全局唯一静态实例对象.也就是说从它创建开始,一直到整个游戏程序结束才会释放资源,期间一直保存的着数据. 单例类在大部分游戏中应该是必不可少的部分,如整个游戏音乐 ...
- c语言l博客作业11
问题 答案 这个作业属于那个课程 C语言程序设计II 这个作业要求在哪里 https://edu.cnblogs.com/campus/zswxy/CST2019-2/homework/8655 我在 ...
- 解决SQLPLUS ??? 显示的临时办法
错误现象为: 解决命令 export NLS_LANG=american_america.zhs16gbk
- CentOS7之ssh-Xshell密钥认证登陆
操作系统版本:CentOS Linux release 7.2.1511 (Core) SSH版本:OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 1.打开Xshell工 ...
- MySQL-线上数据迁移实战记录
1. 迁移背景和限制条件 随着功能的迭代或者数据表中数据量的增加,将现有数据进行迁移已是工作中经常遇到的事情.通常我们在平时迁移数据数据的时候,只需要用mysqldump.mysqlimport指令就 ...
- Mybatis(二) SQL映射文件
SQL映射文件 单条件查询 1. 在UserMapper接口添加抽象方法 //根据用户名模糊查询 List<User> getUserListByName(); 2. 在UserMappe ...
- Cause: org.xml.sax.SAXParseException: The content of elements must consist of well-formed character data or markup.
Caused by: org.apache.ibatis.builder.BuilderException: Error creating document instance. Cause: org ...
- E - 卿学姐与城堡的墙(树状数组求逆序数)
卿学姐与城堡的墙 Time Limit: 2000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submit ...