php里说出数组的常用函数及用法?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php里说出数组的常用函数及用法?相关的知识,希望对你有一定的参考价值。

php常用操作数组的函数
变量和数组的转换
compact() 将变量整合成数组

extract() 将数组中的每个值以键的名分解成变量
变量和字符串转换
explode() 以某个子串分解字符串成数组
implode() 将一维数组根据某个符号拼接成字符串
数组与数组之间关系
array_merge() 合并/并集
array_diff() 差集
array_intersect() 交集
数组值的操作
array_pop() 删除(弹出)数组最后一个值
array_push() 向数组中追加一个值
判断数组是否存在数组中
in_array() 判断一个值是否存在数组中
array_key_exists() 判断键是否存在数组中
数组去重
array_unique() 数组去重
获取二维数组中的值的集合
array_column() 获取二维数组中的值的集合
提取数组的键与值
array_values 提取数组的值构成一维数组
array_keys 提取数组的键构成一维数组
返回数组中的随机的键
array_rand() 返回数组中的随机的键
返回数组中值的数量
count() 返回数组中值的和
查询数组中的值
array_search() 查询数组中的值是否存在/in_array()有点相似
排序
sort() 排序有很多种,按键或值升降序
array_multisort() 多维数组排序
分割数组
array_chunk()
参考技术A PHP(PHP: Hypertext Preprocessor)即“超文本预处理器”,是在服务器端执行的脚本语言,尤其适用于Web开发并可嵌入html中。PHP语法学习了C语言,吸纳Java和Perl多个语言的特色发展出自己的特色语法,并根据它们的长项持续改进提升自己,例如java的面向对象编程,该语言当初创建的主要目标是让开发人员快速编写出优质的web网站。PHP同时支持面向对象和面向过程的开发,使用上非常灵活。
PHP是一个拥有众多开发者的开源软件项目,最开始是Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。PHP是在1994年由Rasmus Lerdorf创建的,最初只是一个简单的用Perl语言编写的统计他自己网站访问者数量的程序。后来重新用C语言编写,同时可以访问数据库,1995年,PHP(Personal Home Page Tools)对外发表第一个版本PHP1。此后,越来越多的网站开始使用PHP,并且强烈要求增加一些特性,如循环语句和数组变量等,1995年发布的PHP2加入了对mysql的支持。
Andi Gutmans和Zeev Suraski在为一所大学的项目中开发电子商务程序时发现PHP2功能明显不足,于是他们重写了代码发布了PHP3。PHP3是类似于现代PHP语法结构的第一个版本,PHP3的最强大的功能是它的可扩展性,PHP3的新功能和广泛的第三方数据库、API的支持使得这样程序的编写成为可能。
PHP发布不久,Andi Gutmans和Zeev Suraski开始重新编写PHP代码。设计目标是增强复杂程序运行时的性能和PHP自身代码的模块性。经过不懈努力Zend引擎研发成功并且实现了设计目标,并在1999年中期引入 PHP。基于该引擎并结合了更多新功能的 PHP4于2000年5月正式发布。除了更高的性能以外,PHP4还包含一些关键功能,比如:支持更多的 web 服务器、HTTP Sessions 支持、输出缓冲、更安全的用户输入和一些新的语言结构。
PHP5于2004年7月正式发布,它的核心是Zend引擎2代(PHP7是Zend加强版3代),引入了新的对象模型和大量新功能,开始支持面向对象编程。随着PHP6经历长时间的开发流产后,PHP5发布了6个版本顽强的支撑着开源社区的发展,直到2015-12-03那天迎来了PHP 7.0的发布,其实PHP5.6已经包含了很多PHP6想实现的特性,它为PHP7的研发争取了宝贵的时间。不负众望PHP7.0对比PHP5.6性能整整提升了2倍,PHP7的成功发布让很多核心开发成员回归到PHP社区,并且在2020-11-26发布了PHP8。和php7系列相对比,PHP8对各种变量判断和运算采用更严格的验证判断模式,这点有利后续版本对jit的性能优化。
PHP语言作为一种高级语言,其特点是开源, 在设计体系上属于C语言体系,它可以让很多接受过高等教育的初学者能很快接受并完成入门学习,简单好上手容易找工作自然粉丝多。如果数据量大及访问压力大,可以集成redis、mysql分表分区分库、elasticsearch搜索引擎、消息队列写保护和php系统分布式集群部署等技术方案,缓解数据存储、服务访问和数据检索带来的巨大压力。
PHP 有很多标准的函数和结构。还有一些函数需要和特定的扩展模块一起编译,否则在使用它们的时候就会得到一个致命的“未定义函数”错误。例如,要使用 image 函数中的 imagecreatetruecolor(),需要在编译 PHP 的时候加上 GD 的支持。或者要使用 mysqli_connect() 函数,就需要在编译 PHP 的时候加上 MySQLi 支持。有很多核心函数已包含在每个版本的 PHP 中如字符串和变量函数。调用 phpinfo() 或者 get_loaded_extensions() 可以得知 PHP 加载了那些扩展库。同时还应该注意,很多扩展库默认就是有效的。
参考技术B PHP中常用的十个数组函数
in_array
array_search
array_key_exists
array_values
array_filter
array_column
array_merge
array_pop
list
ksort

1、in_array
检查数组中是否存在某个值
2、array_search
在数组中搜索给定的值,如果成功则返回首个相应的键名
3、array_key_exists
检查数组里是否有指定的键名或索引
4、array_values
返回数组中所有的值
5、array_filter
用回调函数过滤数组中的单元
6、array_column
返回数组中指定的一列
7、array_merge
合并一个或多个数组
8、array_pop
弹出数组最后一个单元(出栈)
9、list
把数组中的值赋给一组变量
10、ksort
对数组按照键名排序
参考技术C 数学函数

1.abs(): 求绝对值

$abs = abs(-4.2); //4.2 数字绝对值数字

2.ceil(): 进一法取整

echo ceil(9.999); // 10 浮点数进一取整

3.floor(): 舍去法取整

echo floor(9.999); // 9 浮点数直接舍去小数部分

4.fmod(): 浮点数取余

$x = 5.7;

$y = 1.3; // 两个浮点数,x>y 浮点余数

$r = fmod($x, $y); // $r equals 0.5, because 4 * 1.3 + 0.5 = 5.7

5.pow(): 返回数的n次方

echo pow(-1, 20); // 1 基础数|n次方乘方值

6.round(): 浮点数四舍五入

echo round(1.95583, 2); // 1.96, 一个数值|保留小数点后多少位,默认为0 舍入后的结果

7.sqrt(): 求平方根

echo sqrt(9); //3 被开方的数平方根

8.max(): 求最大值

echo max(1, 3, 5, 6, 7); // 7

多个数字或数组 返回其中的最大值

echo max(array(2, 4, 5)); // 5

9.min(): 求最小值

输入: 多个数字或数组

输出: 返回其中的最小值

10.mt_rand(): 更好的随机数

输入: 最小|最大, 输出: 随机数随机返回范围内的值

echo mt_rand(0,9);//n

11.rand(): 随机数 输入: 最小|最大, 输出: 随机数随机返回范围内的值

12.pi(): 获取圆周率值

去空格或或其他字符:

13.trim(): 删除字符串两端的空格或其他预定义字符

$str = "

Hello World!

"; echo trim($str);

输入: 目标字符串 返回值: 清除后的字符串

14.rtrim(): 删除字符串右边的空格或其他预定义字符

$str = "Hello World!

"; echo rtrim($str);

15.chop(): rtrim()的别名

16.ltrim(): 删除字符串左边的空格或其他预定义字符

$str = "

Hello World!"; echo ltrim($str);

17.dirname(): 返回路径中的目录部分

echo dirname("c:/testweb/home.php"); //c:/testweb

输入: 一个包含路径的字符串 返回值: 返回文件路径的目录部分

字符串生成与转化:

18.str_pad(): 把字符串填充为指定的长度

$str = "Hello World"; echo str_pad($str,20,".");

输入: 要填充的字符串|新字符串的长度|供填充使用的字符串, 默认是空白

输出: 完成后的字符串

19.str_repeat(): 重复使用指定字符串

echo str_repeat(".",13); // 要重复的字符串|字符串将被重复的次数13个点

20.str_split(): 把字符串分割到数组中

print_r(str_split("Hello"));

输入: 要分割的字符串|每个数组元素的长度,默认1

输出: 拆分后的字符串数组
参考技术D


php array

php 判断数组里是不是有某个值

可以直接使用php内置函数in_array()来实现判断。php in_array 函数用于检查数组中是否存在某个值,如果存在,则返回true,否则返回false。

大致的编程思路:

1、所用到的函数:php in_array() 检查数组中是否存在某个值;in_array检查数组中是否存在某个值。

2、基本语法:bool in_array(mixed $needle,array $haystack,bool $strict=FALSE)

3、基本用法:在 haystack 中搜索 needle。

needle 是必需的。因为规定要在数组搜索的值。如果是字符串,则比较是区分大小写的。    

haystack 是必需的。因为规定要搜索的数组。    

扩展资料:

PHP原始为Personal Home Page的缩写,已经正式更名为 "PHP: Hypertext Preprocessor"。PHP 语言作为当今最热门的网站程序开发语言,它具有成本低、速度快、可移植性好、 内置丰富的函数库等优点,因此被越来越多的企业应用于网站开发中。

PHP其特点是具有公开的源代码, 在程序设计上与通用型语言,如C语言相似性较高,因此在操作过程中简单易懂,可操作性强。同时,PHP语言具有较高的数据传送处理水平和输出水平,可以广泛应用在Windows系统及各类Web服务器中。


参考技术A type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。

复制代码 代码如下:

$arr = array('可以','如何','方法','知道','没有','不要');
//in_array(value,array,type)
$isin = in_array("如何2",$arr);
if($isin)
echo "in====".$isin;
else
echo "out====".$isin;


方法二:
array_key_exists 'array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否则返回 false。array_key_exists(key,array
方法三:

array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。array_search(value,array,strict),当数据量比较大的时候,用array_key_exists比较合适,但占用的内存比较大,
数组结构是: array(1, 2, 3, ..)和 array(1 => true, 2 => false, ..),内存使用比值为1:2。
具体跟内部实现有关系,在php中第一种和第二种的数据结构类似,都是关联数组。

其它补充:
查找一个元素是否在数组中,一共有下面三种做法:
in_array '函数在数组中搜索给定的值。in_array(value,array,type)type 可选。如果设置该参数为 true,则检查搜索的数据与数组的值的类型是否相同。
array_key_exists 'array_key_exists() 函数判断某个数组中是否存在指定的 key,如果该 key 存在,则返回 true,否则返回 false。
array_key_exists(key,array)
array_search 'array_search() 函数与 in_array() 一样,在数组中查找一个键值。如果找到了该值,匹配元素的键名会被返回。如果没找到,则返回 false。
array_search(value,array,strict)
从这里来看,在数据量不大的时候,比如小于1000,查找用哪一种都行,都不会成为瓶颈;
当数据量比较大的时候,用array_key_exists比较合适。
当然这里array_key_exists占用的内存比较大,经测算
数组结构是: array(1, 2, 3, ..)和 array(1 => true, 2 => false, ..)
他们内存使用比值为1:2;
这个和内部实现有关系,实际上在php中第一种和第二种的数据结构类似,都是关联数组。
php in_array() 检查数组中是否存在某个值
in_array检查数组中是否存在某个值
基本语法:
bool in_array(mixed $needle,array $haystack,bool $strict=FALSE)

在 haystack 中搜索 needle
参数介绍

参数
描述

needle 必需。规定要在数组搜索的值。如果是字符串,则比较是区分大小写的。
haystack 必需。规定要搜索的数组。
strict 可选。如果设置该参数为 true,则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。

返回值
如果找到 needle 则返回 TRUE ,否则返回 FALSE 。
实例:
?

1
2
3
4
5
6
7
8
9
10
11
12
13
14

<?php
$os = array(
"Mac",
"NT",
"Irix",
"Linux"
);
if (in_array("Irix", $os))
echo "Got Irix";

if (in_array("mac", $os))
echo "Got mac";

?>

在线运行第二个条件失败,因为 in_array() 是区分大小写的,所以以上程序显示为:
Got Irix本回答被提问者采纳

以上是关于php里说出数组的常用函数及用法?的主要内容,如果未能解决你的问题,请参考以下文章

php mysqli 常用函数都有哪些

php常用函数

php函数如何返回数组啊, 比如,

php 怎么将数组转xml的函数

PHP中遍历数组有三种常用的方法

PHP中遍历数组有三种常用的方法