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 ...
随机推荐
- Java程序设计——反转字符串 & 找朋友 & 计算int型二进制1的个数 & 情报加密 & 计算日期 & 求近似数 & 输出较小数(练习1)
作为刚刚入门Java的选手,其实C++的功底起到了很大的作用.但是,Java之于C++最大的不同,我个人认为,是其类的多样性.才入门的我,写着老师布置的简单的面对过程的题,如果是C++,可以算是简单了 ...
- python学习之模块-模块(三)
5.6 time 模块 已经知道的常用的time方法:time.time()获取当前时间的时间戳:time.sleep(num)线程推迟指定的时间(秒)后再继续往下运行. 时间的表示方式 大致可以分为 ...
- LeetCode.1029-两城调度(Two City Scheduling)
这是小川的第383次更新,第412篇原创 01 看题和准备 今天介绍的是LeetCode算法题中Easy级别的第245题(顺位题号是1029).公司计划采访的人数为2N.将第i个人飞往城市A的费用是[ ...
- XSS的简单过滤和绕过
XSS的简单过滤和绕过 程序猿用一些函数将构成xss代码的一些关键字符给过滤了.但是,道高一尺魔高一丈,虽然过滤了,还是可以尝试进行过滤绕过,以达到XSS攻击的目的. 最简单的是输入<scrip ...
- 【LeetCode】714、买卖股票的最佳时机含手续费
Best Time to Buy and Sell Stock with Transaction Fee 题目等级:Medium 题目描述: Your are given an array of in ...
- 实验仓 #779.【CSP2019模拟 Day 1】A题
题目传送门 考场上面做了一个暴力的做法,然后,然后他$WA$了. emmm...($T$就算了吧,$WA$了算什么事啊) 好吧,这道题,其实好像...是一道思维题来着. 如果出现了这样两个打X的格子上 ...
- C#后台正则表达式
static Regex RegPhone = new Regex(@"^((1[34578][0-9]{1}))\d{8}"); static Regex RegN ...
- maven 报错 -source 1.5 中不支持 diamond 运算符
maven 执行install 报-source 1.5 中不支持 diamond 运算符 解决办法, 指定编译版本 <build> <plugins> <plugin& ...
- nodejs 和 js
JavaScript组成:ECMAScript(定义这门语言的基础,比如语法.数据类型.结构以及一些内置对象等).DOM(基于ECMASCRIPT,扩展出来的用于操作页面元素的方法).BOM(基于EC ...
- Excel透视表基础之字段布局与重命名、更新、数字格式设置、空值与错误值、
字段布局与重命名 经典布局切换 字段布局 默认布局:文本类型在行区域.数字类型在值区域. 最好用鼠标拖拽. 字段重命名 可以在字段设置中更改. 透视表更新 延迟更新 手动刷新 自动刷新 刷新注意事项 ...