Inhaltsverzeichnis
概述
数组的基本操作
php定义数组:
创建自定义键的数组
each()的使用
list()的使用
数组元素的排序
数组的各类API的使用
for循环遍历
数组的实例
array_pad函数的使用
unset()的使用
array_fill()的使用
array_combine()的使用
array_splice()删除数组成员 :
array_unique删除数组中的重复值:
array_flip()交换数组的键值和值
array_search()搜索数值
Heim Backend-Entwicklung PHP-Tutorial PHP数组操作详解

PHP数组操作详解

Jun 23, 2016 pm 01:35 PM

概述

要访问一个变量的内容,可以直接使用其名称。如果该变量是一个数组,可以使用变量名称和关键字或索引的组合来访问其内容。

像其他变量一样,使用运算符=可以改变数组元素的内容。数组单元可以通过 array[key] 语法来访问。

数组的基本操作

php定义数组:

<?php      $array = array();      $array["key"] = "values";  ?> 
Nach dem Login kopieren

在PHP中声明数组的方式主要有两种:

1.用array()函数声明数组,
2.直接为数组元素赋值。

<?php    //array数组    $users = array('phone','computer','dos','linux');    echo $users;//只会打印出数据类型Array    print_r($users);//Array ( [0] => phone [1] => computer [2] => dos [3] => linux )    $numbers = range(1,5);//创建一个包含指定范围的数组    print_r($numbers);//Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )    print_r(true);//1    var_dump(false);//bool(false)//print_r可以把字符串和数字简单地打印出来,数组会以Array开头并已键值形式表示,print_r输出布尔值和null的结果没有意义,因此用var_dump更合适//通过循环来显示数组里所有的值    for($i = 0 ;$i < 5;$i++){        echo $users[$i];        echo '<br/>';    }//通过count/sizeof统计数组中单元数目或对象中的属性个数    for($i = 0; $i < count($users);$i++){        echo $users[$i];        echo '<br/>';    }//还可以通过foreach循环来遍历数组,这种好处在于不需要考虑key    foreach($users as $value){        echo $value.'<br/>';//点号为字符串连接符号    }//foreach循环遍历 $key => $value;$key和$value是变量名,可以自行设置    foreach($users as $key => $value){        echo $key.'<br/>';//输出键    }?>
Nach dem Login kopieren

创建自定义键的数组

<?php    //创建自定义键的数组    $ceo = array('apple'=>'jobs','microsoft'=>'Nadella','Larry Page','Eric');    //如果不去声明元素的key,它会从零开始    print_r($ceo);//Array ( [apple] => jobs [microsoft] => Nadella [0] => Larry Page [1] => Eric )    echo $ceo['apple'];//jobs     //php5.4起的用法    $array = [        "foo" => "bar",        "bar" => "foo",    ];    print_r($array);//Array ( [foo] => bar [bar] => foo ) ?>    
Nach dem Login kopieren

从php5.4 起可以使用短数组定义语法,用 [] 替代 array()。有点类似于javascript中数组的定义。

each()的使用

<?php    //通过为数组元素赋值来创建数组    $ages['trigkit4'] = 22;    echo $ages.'<br/>';//Array    //因为相关数组的索引不是数字,所以无法通过for循环来进行遍历操作,只能通过foreach循环或list()和each()结构    //each的使用    //each返回数组中当前的键/值对并将数组指针向前移动一步    $users = array('trigkit4'=>22,'mike'=>20,'john'=>30);    //print_r(each($users));//Array ( [1] => 22 [value] => 22 [0] => trigkit4 [key] => trigkit4 )   //相当于:$a = array([0]=>trigkit4,[1]=>22,[value]=>22,[key]=>trigkit4);    $a = each($users);//each把原来的数组的第一个元素拿出来包装成新数组后赋值给$a    echo $a[0];//trigkit4    //!!表示将真实存在的数据转换成布尔值    echo !!each($users);//1?>  
Nach dem Login kopieren

each的指针指向第一个键值对,并返回第一个数组元素,获取其键值对,并包装成新数组

list()的使用

list用来把数组用的值赋给一些变量,看下面例子:

<?php    $a = ['2','abc','def'];    list($var1,$var2) = $a;    echo $var1.'<br/>';//2    echo $var2;//abc    $a = ['name'=>'trigkit4','age'=>22,'0'=>'boy'];    //list只认识key为数字的索引    list($var1,$var2) = $a;    echo $var1;//boy?>
Nach dem Login kopieren

注:list只认识key为数字的索引

数组元素的排序

反向排序:sort()、asort()和 ksort()都是正向排序,当然也有相对应的反向排序. 实现反向:rsort()、arsort()和 krsort()。array_unshift()函数将新元素添加到数组头,array_push()函数将每个新元素添加到数组 的末尾。array_shift()删除数组头第一个元素,与其相反的函数是 array_pop(),删除并返回数组末 尾的一个元素。array_rand()返回数组中的一个或多个键。函数shuffle()将数组个元素进 行随机排序。函数 array_reverse()给出一个原来数组的反向排序
Nach dem Login kopieren

数组的各类API的使用

count()和 sizeof()统计数组下标的个数 array_count_values()统计数组内下标值的个数<?php    $numbers = array('100','2');    sort($numbers,SORT_STRING);//按字符串排序,字符串只比较第一位大小    print_r($numbers);//Array ( [0] => 100 [1] => 2 )    $arr = array('trigkit4','banner','10');    sort($arr,SORT_STRING);    print_r($arr);//Array ( [0] => 10 [1] => banner [2] => trigkit4 )    shuffle($arr);    print_r($arr);//随机排序    $array = array('a','b','c','d','0','1');    array_reverse($array);    print_r($array);//原数组的反向排序。 Array ( [0] => a [1] => b [2] => c [3] => d [4] => 0 [5] => 1 )    //数组的拷贝    $arr1  = array( '10' , 2);    $arr2  =  &$arr1 ;    $arr2 [] =  4 ;  // $arr2 被改变了,$arr1仍然是array('10', 3)    print_r($arr2);//Array ( [0] => 10 [1] => 2 [2] => 4 )    //asort的使用    $arr3  = & $arr1 ;//现在arr1和arr3是一样的    $arr3 [] =  '3' ;    asort($arr3);//对数组进行排序并保留原始关系    print_r($arr3);// Array ( [1] => 2 [2] => 3 [0] => 10 )    //ksort的使用    $fruits = array('c'=>'banana','a'=>'apple','d'=>'orange');    ksort($fruits);    print_r($fruits);//Array ( [a] => apple [c] => banana [d] => orange )   //unshift的使用    array_unshift($array,'z');//开头处添加一元素    print_r($array);//Array ( [0] => z [1] => a [2] => b [3] => c [4] => d [5] => 0 [6] => 1 )      //current(pos)的使用    echo current($array);//z;获取当前数组中的当前单元    //next的使用    echo next($array);//a;将数组中的内部指针向前移动一位    //reset的使用    echo reset($array);//z;将数组内部指针指向第一个单元    //prev的使用    echo next($array);//a;    echo prev($array);//z;倒回一位    //sizeof的使用    echo sizeof($array);//7;统计数组元素的个数    //array_count_values    $num = array(10,20,30,10,20,1,0,10);//统计数组元素出现的次数    print_r(array_count_values($num));//Array ( [10] => 3 [20] => 2 [30] => 1 [1] => 1 [0] => 1 ) ?>    
Nach dem Login kopieren

current():每个数组都有一个内部指针指向他的当前单元,初始指向插入到数组中的第一个元素

for循环遍历

<?php    $value = range(0,120,10);    for($i=0;$i<count($value);$i++){        print_r($value[$i].' ');//0 10 20 30 40 50 60 70 80 90 100 110 120     }?>
Nach dem Login kopieren

数组的实例

array_pad函数的使用

<?php    //array_pad函数,数组数组首尾选择性追加    $num = array(1=>10,2=>20,3=>30);    $num = array_pad($num,4,40);    print_r($num);//Array ( [0] => 10 [1] => 20 [2] => 30 [3] => 40 )    $num = array_pad($num,-5,50);//array_pad(array,size,value)    print_r($num);//Array ( [0] => 50 [1] => 10 [2] => 20 [3] => 30 [4] => 40 ) ?>
Nach dem Login kopieren

size:指定的长度。整数则填补到右侧,负数则填补到左侧。

unset()的使用

 <?php    //unset()的使用    $num = array_fill(0,5,rand(1,10));//rand(min,max)    print_r($num);//Array ( [0] => 8 [1] => 8 [2] => 8 [3] => 8 [4] => 8 )     echo '<br/>';    unset($num[3]);    print_r($num);//Array ( [0] => 8 [1] => 8 [2] => 8 [4] => 8 ) ?>
Nach dem Login kopieren

array_fill()的使用

<?php    //array_fill()的使用    $num = range('a','e');    $arrayFilled = array_fill(1,2,$num);//array_fill(start,number,value)    echo '<pre class="brush:php;toolbar:false">';    print_r($arrayFilled);?>
Nach dem Login kopieren

array_combine()的使用

<?PHP    $number = array(1,2,3,4,5);    $array = array("I","Am","A","PHP","er");    $newArray = array_combine($number,$array);    print_r($newArray);//Array ( [1] => I [2] => Am [3] => A [4] => PHP [5] => er ) ?> 
Nach dem Login kopieren

array_splice()删除数组成员 :

<?php    $color = array("red", "green", "blue", "yellow");    count ($color); //得到4    array_splice($color,1,1); //删除第二个元素    print_r(count ($color)); //3    echo $color[2]; //yellow    echo $color[1]; //blue?>  
Nach dem Login kopieren

array_unique删除数组中的重复值:

<?php    $color=array("red", "green", "blue", "yellow","blue","green");    $result = array_unique($color);    print_r($result);//Array ( [0] => red [1] => green [2] => blue [3] => yellow ) ?> 
Nach dem Login kopieren

array_flip()交换数组的键值和值

<?PHP    $array = array("red","blue","red","Black");    print_r($array);    echo "<br />";    $array = array_flip($array);//    print_r($array);//Array ( [red] => 2 [blue] => 1 [Black] => 3 ) ?> 
Nach dem Login kopieren

array_search()搜索数值

<meta charset="utf-8"><?php   $array = array("red","blue","red","Black");   $result=array_search("red",$array)//array_search(value,array,strict)    if(($result === NULL)){        echo "不存在数值red";    }else{        echo "存在数值 $result";//存在数值 0     }?> 
Nach dem Login kopieren
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Java-Tutorial
1663
14
PHP-Tutorial
1264
29
C#-Tutorial
1237
24
Erklären Sie verschiedene Fehlertypen in PHP (Hinweis, Warnung, tödlicher Fehler, analysieren Sie Fehler). Erklären Sie verschiedene Fehlertypen in PHP (Hinweis, Warnung, tödlicher Fehler, analysieren Sie Fehler). Apr 08, 2025 am 12:03 AM

Es gibt vier Hauptfehlertypen in PHP: 1. Nichts: Das geringste unterbrochen das Programm nicht, wie z. B. Zugriff auf undefinierte Variablen; 2. Warnung: Ernst als Bekanntmachung, wird das Programm nicht kündigen, z. B. keine Dateien; 3. FatalError: Das schwerwiegendste wird das Programm beenden, z. 4. Parseerror: Syntaxfehler verhindern, dass das Programm ausgeführt wird, z. B. das Vergessen, das End -Tag hinzuzufügen.

Erklären Sie sicheres Kennwort -Hashing in PHP (z. B. password_hash, password_verify). Warum nicht MD5 oder SHA1 verwenden? Erklären Sie sicheres Kennwort -Hashing in PHP (z. B. password_hash, password_verify). Warum nicht MD5 oder SHA1 verwenden? Apr 17, 2025 am 12:06 AM

In PHP sollten die Funktionen für Passwort_Hash und passwart_verify verwendet werden, um sicheres Passwort -Hashing zu implementieren, und MD5 oder SHA1 sollte nicht verwendet werden. 1) Passwort_hash generiert einen Hash, der Salzwerte enthält, um die Sicherheit zu verbessern. 2) Passwort_Verify prüfen Sie das Passwort und sicherstellen Sie die Sicherheit, indem Sie die Hash -Werte vergleichen. 3) MD5 und SHA1 sind anfällig und fehlen Salzwerte und sind nicht für die Sicherheit der modernen Passwort geeignet.

PHP und Python: Vergleich von zwei beliebten Programmiersprachen PHP und Python: Vergleich von zwei beliebten Programmiersprachen Apr 14, 2025 am 12:13 AM

PHP und Python haben jeweils ihre eigenen Vorteile und wählen nach den Projektanforderungen. 1.PHP ist für die Webentwicklung geeignet, insbesondere für die schnelle Entwicklung und Wartung von Websites. 2. Python eignet sich für Datenwissenschaft, maschinelles Lernen und künstliche Intelligenz mit prägnanter Syntax und für Anfänger.

PHP in Aktion: Beispiele und Anwendungen in realer Welt PHP in Aktion: Beispiele und Anwendungen in realer Welt Apr 14, 2025 am 12:19 AM

PHP wird in E-Commerce, Content Management Systems und API-Entwicklung häufig verwendet. 1) E-Commerce: Wird für die Einkaufswagenfunktion und Zahlungsabwicklung verwendet. 2) Content -Management -System: Wird für die Erzeugung der dynamischen Inhalte und die Benutzerverwaltung verwendet. 3) API -Entwicklung: Wird für die erholsame API -Entwicklung und die API -Sicherheit verwendet. Durch Leistungsoptimierung und Best Practices werden die Effizienz und Wartbarkeit von PHP -Anwendungen verbessert.

Was sind HTTP -Anforderungsmethoden (erhalten, posten, setzen, löschen usw.) und wann sollte jeder verwendet werden? Was sind HTTP -Anforderungsmethoden (erhalten, posten, setzen, löschen usw.) und wann sollte jeder verwendet werden? Apr 09, 2025 am 12:09 AM

Zu den HTTP -Anforderungsmethoden gehören GET, Post, Put und Löschen, mit denen Ressourcen erhalten, übermittelt, aktualisiert und gelöscht werden. 1. Die GET -Methode wird verwendet, um Ressourcen zu erhalten, und eignet sich für Lesevorgänge. 2. Die Post -Methode wird verwendet, um Daten zu übermitteln und häufig neue Ressourcen zu erstellen. 3. Die Put -Methode wird zum Aktualisieren von Ressourcen verwendet und eignet sich für vollständige Updates. V.

PHP: Eine Schlüsselsprache für die Webentwicklung PHP: Eine Schlüsselsprache für die Webentwicklung Apr 13, 2025 am 12:08 AM

PHP ist eine Skriptsprache, die auf der Serverseite weit verbreitet ist und insbesondere für die Webentwicklung geeignet ist. 1.PHP kann HTML einbetten, HTTP -Anforderungen und Antworten verarbeiten und eine Vielzahl von Datenbanken unterstützt. 2.PHP wird verwendet, um dynamische Webinhalte, Prozessformdaten, Zugriffsdatenbanken usw. mit starker Community -Unterstützung und Open -Source -Ressourcen zu generieren. 3. PHP ist eine interpretierte Sprache, und der Ausführungsprozess umfasst lexikalische Analyse, grammatikalische Analyse, Zusammenstellung und Ausführung. 4.PHP kann mit MySQL für erweiterte Anwendungen wie Benutzerregistrierungssysteme kombiniert werden. 5. Beim Debuggen von PHP können Sie Funktionen wie error_reporting () und var_dump () verwenden. 6. Optimieren Sie den PHP-Code, um Caching-Mechanismen zu verwenden, Datenbankabfragen zu optimieren und integrierte Funktionen zu verwenden. 7

Erklären Sie den Unterschied zwischen Selbst ::, Parent :: und static :: in Php OOP. Erklären Sie den Unterschied zwischen Selbst ::, Parent :: und static :: in Php OOP. Apr 09, 2025 am 12:04 AM

In Phpoop bezieht sich Self :: auf die aktuelle Klasse, Eltern :: Bezieht sich auf die Elternklasse, static :: wird für die späte statische Bindung verwendet. 1.self :: wird für statische Methoden und konstante Aufrufe verwendet, unterstützt jedoch keine späte statische Bindung. 2.PARENT :: wird für Unterklassen verwendet, um übergeordnete Klassenmethoden aufzurufen, und auf private Methoden können nicht zugegriffen werden. 3.Static :: unterstützt die verspätete statische Bindung, geeignet für Vererbung und Polymorphismus, kann jedoch die Lesbarkeit des Codes beeinflussen.

Wie kann PHP -Datei sicher sicher hochladen? Wie kann PHP -Datei sicher sicher hochladen? Apr 10, 2025 am 09:37 AM

PHP überlädt Datei -Hochladen über die Variable $ \ _ Dateien. Zu den Methoden zur Sicherstellung gehören: 1. Upload -Fehler, 2. Dateityp und -größe überprüfen, 3.. Dateiüberschreibung verhindern, 4. Verschieben von Dateien auf einen dauerhaften Speicherort.

See all articles