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 ...
随机推荐
- 哈希表 HashTable(又名散列表)
简介 其实通过标题上哈希表的英文名HashTable,我们就可以看出这是一个组合的数据结构Hash+Table. Hash是什么?它是一个函数,作用可以通过一个公式来表示: index = HashF ...
- js中的break,continue和return的用法及区别
为什么要说个?好像很简单,但是我也会迷糊,不懂有时候为什么要用return,然而break和continue也经常和他放在一起. 所以就一起来说一说,这三个看起来很简单,却常常会出错的关键词的具体用法 ...
- centos8飞行驾驶舱和docker安装
零.先解决cenos8的网络(systemctl restart network.service已被废弃) 1.# vim /etc/sysconfig/network-scripts/ifcfg-e ...
- 【VS开发】raw socket 的例子
raw socket 的例子 一. 摘要 Raw Socket: 原始套接字 可以用它来发送和接收 IP 层以上的原始数据包, 如 ICMP, TCP, UDP... int sockRa ...
- docker安装jenkins自动化部署
Docker之Jenkins自动化部署 1.拉取jenkins镜像images(类比:java中的类) docker pull jenkinsci/jenkins:lts 或 docker pull ...
- Css设置最优先
input{ width: 220px !important; } css中 加上 !important 用一些前端框架,源文件修改不便时 可以这样用
- 【6.28校内test】T1 Jelly的难题1
Jelly的难题[题目链接] 废话一句:今天中考出成绩,感觉大家考的都超级棒,不管怎样,愿大家成为最好的自己. 好了废话完了,下面是题解部分: SOLUTION: 首先你可能发生的,是看不懂题: 定睛 ...
- [BJWC2008] Gate Of Babylon
题目链接 容斥+隔板法+Lucas定理 #include <bits/stdc++.h> using namespace std; const int N=1e5+10; int n,m, ...
- numpy-排序
numpy 有多种排序方法. sort sort(self, axis=-1, kind='quicksort', order=None):排完序后改变原值 [只有这个方法改变原值] axis : i ...
- Codeforces - 1203D2 - Remove the Substring (hard version) - 双指针
https://codeforces.com/contest/1203/problem/D2 上次学了双指针求两个字符串之间的是否t是s的子序列.但其实这个双指针可以求出的是s的前i个位置中匹配t的最 ...