목차
一、数组操作的基本函数
二、数组的分段和填充
三、数组与栈
四、数组与队列
五、回调函数
六、数组的排序
七、数组的计算
八、其他的数组函数
백엔드 개발 PHP 튜토리얼 一些常用的PHP数组函数_PHP教程

一些常用的PHP数组函数_PHP教程

Jul 13, 2016 am 10:33 AM
php 배열 함수

数组运用的熟练有时候能解决很多问题。熟悉相关函数就能事半功倍。看看下面有关数组的函数你是否都熟悉呢?

一、数组操作的基本函数

数组的键名和值

  • array_values($arr);获得数组的值
  • array_keys($arr);获得数组的键名
  • array_flip($arr);数组中的值与键名互换(如果有重复前面的会被后面的覆盖)
  • in_array("apple",$arr);在数组中检索apple
  • array_search("apple",$arr);在数组中检索apple ,如果存在返回键名
  • array_key_exists("apple",$arr);检索给定的键名是否存在数组中
  • isset($arr[apple]):检索给定的键名是否存在数组中

数组的内部指针

  • current($arr);返回数组中的当前单元
  • pos($arr);返回数组中的当前单元
  • key($arr);返回数组中当前单元的键名
  • prev($arr);将数组中的内部指针倒回一位
  • next($arr);将数组中的内部指针向前移动一位
  • end($arr);将数组中的内部指针指向最后一个单元
  • reset($arr;将数组中的内部指针指向第一个单元
  • each($arr);将返回数组当前元素的一个键名/值的构造数组,并使数组指针向前移动一位
  • list($key,$value)=each($arr);获得数组当前元素的键名和值

数组和变量之间的转换

extract($arr);用于把数组中的元素转换成变量导入到当前文件中,键名当作变量名,值作为变量值。注:(第二个参数很重要,可以看手册使用)使用方法 echo $a; compact(var1,var2,var3);用给定的变量名创建一个数组

二、数组的分段和填充

数组的分段

  • array_slice($arr,0,3);可以将数组中的一段取出,此函数忽略键名
  • array_splice($arr,0,3,array("black","maroon"));可以将数组中的一段取出,与上个函数不同在于返回的序列从原数组中删除

分割多个数组

  • array_chunk($arr,3,TRUE);可以将一个数组分割成多个,TRUE为保留原数组的键名

数组的填充

  • array_pad($arr,5,'x');将一个数组填补到制定长度

三、数组与栈

  • array_push($arr,"apple","pear");将一个或多个元素压入数组栈的末尾(入栈),返回入栈元素的个数
  • array_pop($arr);将数组栈的最后一个元素弹出(出栈)

四、数组与队列

  • array_shift($arr);数组中的第一个元素移出并作为结果返回(数组长度减1,其他元素向前移动一位,数字键名改为从零技术,文字键名不变)
  • array_unshift($arr,"a",array(1,2));在数组的开头插入一个或多个元素

五、回调函数

  • array_walk($arr,'function','words');使用用户函数对数组中的每个成员进行处理(第三个参数传递给回调函数function)
  • array_mpa("function",$arr1,$arr2);可以处理多个数组(当使用两个或更多数组时,他们的长度应该相同)
  • array_filter($arr,"function");使用回调函数过滤数组中的每个元素,如果回调函数为TRUE,数组的当前元素会被包含在返回的结果数组中,数组的键名保留不变
  • array_reduce($arr,"function","*");转化为单值函数(*为数组的第一个值)

六、数组的排序

通过元素值对数组排序

  • sort($arr);由小到大的顺序排序(第二个参数为按什么方式排序)忽略键名的数组排序
  • rsort($arr);由大到小的顺序排序(第二个参数为按什么方式排序)忽略键名的数组排序
  • usort($arr,"function");使用用户自定义的比较函数对数组中的值进行排序(function中有两个参数,0表示相等,正数表示第一个大于第二个,负数表示第一个小于第二个)忽略键名的数组排序
  • asort($arr);由小到大的顺序排序(第二个参数为按什么方式排序)保留键名的数组排序
  • arsort($arr);由大到小的顺序排序(第二个参数为按什么方式排序)保留键名的数组排序
  • uasort($arr,"function");使用用户自定义的比较函数对数组中的值进行排序(function中有两个参数,0表示相等,正数表示第一个大于第二个,负数表示第一个小于第二个)保留键名的数组排序

通过键名对数组排序

  • ksort($arr);按照键名正序排序
  • krsort($arr);按照键名逆序排序
  • uksort($arr,"function");使用用户自定义的比较函数对数组中的键名进行排序(function中有两个参数,0表示相等,正数表示第一个大于第二个,负数表示第一个小于第二个)

自然排序法排序

  • natsort($arr);自然排序(忽略键名)
  • natcasesort($arr);自然排序(忽略大小写,忽略键名)

七、数组的计算

数组元素的求和

  • array_sum($arr);对数组内部的所有元素做求和运算

数组的合并

  • array_merge($arr1,$arr2);合并两个或多个数组(相同的字符串键名,后面的覆盖前面的,相同的数字键名,后面的不会做覆盖操作,而是附加到后面) “+”$arr1+$arr2;对于相同的键名只保留后一个
  • array_merge_recursive($arr1,$arr2);递归合并操作,如果数组中有相同的字符串键名,这些值将被合并到一个数组中去。如果一个值本身是一个数组,将按照相应的键名把它合并为另一个数组。当数组具有相同的数组键名时,后一个值将不会覆盖原来的值,而是附加到后面

数组的差集

  • array_diff($arr1,$arr2);返回差集结果数组
  • array_diff_assoc($arr1,$arr2,$arr3);返回差集结果数组,键名也做比较

数组的交集

  • array_intersect($arr1,$arr2);返回交集结果数组
  • array_intersect_assoc($arr1,$arr2);返回交集结果数组,键名也做比较

八、其他的数组函数

数组元素的求和

  • range(0,12);创建一个包含指定范围单元的数组
  • array_unique($arr);移除数组中重复的值,新的数组中会保留原始的键名
  • array_reverse($arr,TRUE);返回一个单元顺序与原数组相反的数组,如果第二个参数为TRUE保留原来的键名
  • srand((float)microtime()*10000000); 随机种子触发器
  • array_rand($arr,2);从数组中随机取出一个或多个元素
  • shuffle($arr);将数组的顺序打乱

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/752530.htmlTechArticle数组运用的熟练有时候能解决很多问题。熟悉相关函数就能事半功倍。看看下面有关数组的函数你是否都熟悉呢? 一、数组操作的基本函数...
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

CakePHP 프로젝트 구성 CakePHP 프로젝트 구성 Sep 10, 2024 pm 05:25 PM

이번 장에서는 CakePHP의 환경 변수, 일반 구성, 데이터베이스 구성, 이메일 구성에 대해 알아봅니다.

Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Ubuntu 및 Debian용 PHP 8.4 설치 및 업그레이드 가이드 Dec 24, 2024 pm 04:42 PM

PHP 8.4는 상당한 양의 기능 중단 및 제거를 통해 몇 가지 새로운 기능, 보안 개선 및 성능 개선을 제공합니다. 이 가이드에서는 Ubuntu, Debian 또는 해당 파생 제품에서 PHP 8.4를 설치하거나 PHP 8.4로 업그레이드하는 방법을 설명합니다.

CakePHP 날짜 및 시간 CakePHP 날짜 및 시간 Sep 10, 2024 pm 05:27 PM

cakephp4에서 날짜와 시간을 다루기 위해 사용 가능한 FrozenTime 클래스를 활용하겠습니다.

CakePHP 파일 업로드 CakePHP 파일 업로드 Sep 10, 2024 pm 05:27 PM

파일 업로드 작업을 위해 양식 도우미를 사용할 것입니다. 다음은 파일 업로드의 예입니다.

CakePHP 라우팅 CakePHP 라우팅 Sep 10, 2024 pm 05:25 PM

이번 장에서는 라우팅과 관련된 다음과 같은 주제를 학습하겠습니다.

CakePHP 토론 CakePHP 토론 Sep 10, 2024 pm 05:28 PM

CakePHP는 PHP용 오픈 소스 프레임워크입니다. 이는 애플리케이션을 훨씬 쉽게 개발, 배포 및 유지 관리할 수 있도록 하기 위한 것입니다. CakePHP는 강력하고 이해하기 쉬운 MVC와 유사한 아키텍처를 기반으로 합니다. 모델, 뷰 및 컨트롤러 gu

PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 PHP 개발을 위해 Visual Studio Code(VS Code)를 설정하는 방법 Dec 20, 2024 am 11:31 AM

VS Code라고도 알려진 Visual Studio Code는 모든 주요 운영 체제에서 사용할 수 있는 무료 소스 코드 편집기 또는 통합 개발 환경(IDE)입니다. 다양한 프로그래밍 언어에 대한 대규모 확장 모음을 통해 VS Code는

CakePHP 유효성 검사기 만들기 CakePHP 유효성 검사기 만들기 Sep 10, 2024 pm 05:26 PM

컨트롤러에 다음 두 줄을 추가하면 유효성 검사기를 만들 수 있습니다.

See all articles