PHP之数组遍历
PHP之数组遍历
数组在PHP中是一个非常强大的武器,用起来方便、容易,由于使用起来异常灵活,用它就可以实现数据结构中的链表、栈、队列、堆以及所谓的字典、集合等,也可以转换成XML格式。
1、使用for
for语句遍历数组不是一个好选择,一般不会用,局限性太大,因为数组的下标很多时候不连续,或者是既有整数下标又有字符串下标,但存在这么一个情况,恰好是索引数组,且它的下标是连续的,那么这也是一种方法。
$array = array('a', 'b', 'c', 'd', 'e');
$size = count($array); //取得数组单元个数
for($i=0; $i
echo $array[$i].'
';
2、使用foreach
foreach比for更方便、灵活,一般使用它,使用时foreach($arr_name as $value),将前一个数组使用as关键字专为它的元素,当然这是针对一维数组而言,还可以将元素所在的键名取到,如下方式foreach($arr_name as $key=>$value)即可。
$array = array('os'=>'Linux', 'server'=>'Apache', 'db'=>'mysql', 'language'=>'PHP');
foreach($array as $key=>$value){
echo 'key: '.$key.' --- value: '.$value.'
';
}
:
3、list、each、while函数结合
each函数每作用于数组一次,指向内部元素的指针遍向后挪动一个单元,每次each返回一个固定格式的键/值对数组,具体是(1=>值, 'value'=>值, 0=>键, 'key'=>键)。下一次each作用时将移动到下一个元素,示例
$arr = array('one'=>'a','two'=>'b', 'three'=>'c');
$lst = each($arr);
echo 'each=>
'; <p> var_dump($lst); </p> <p> </p> <p> </p> <p> </p> <p> </p> <p> list函数的作用是,赋给它一个数组变量,它会将该数组中的以整数为键值的元素按键值从小到大的顺序赋给自己的参数,如果参数不够填满参数为止,如果数组中值不够,则参数被赋为空值,代码接上</p> <p> </p> <p> list($key, $val) = $lst;</p> <p> echo '<br>';</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> $lst数组变量中的值,键值为整数的分别是前面的1=>'a'和后面的0=>'one,list函数的好处是即便键值小的、排在后边元素也会按照从小到大的顺序赋给list函数中的从前到后的参数。</p> <p> </p> <p> 由于each不循环数组,每each作用一下只移动一下指针,到数组末尾返回值为false,于是放在while中就最合适不过了</p> <p> </p> <p> </p> <p> </p> <p><?php </p> </p><p> $arr = array('one'=>'a','two'=>'b', 'three'=>'c');</p> <p> while(list($key, $val) = each($arr)){</p> <p> echo $key.' => '.$val.'<br>';</p> <p> }</p> <p> </p> <p> </p> <p> </p> <p> </p> <p> 4、使用数组内部指针移动函数</p> <p> </p> <p> 数组内部指针默认指向数组中的第一个元素,函数大致有,current():返回当前指针指向数组中位置的元素值;key():返回当前指针指向数组中位置的元素键;next():将指针移动到下一个元素位置;prev():将指针移动到前一个元素位置;reset():将数组指针一到那个到数组第一个元素的位置;end():将数组指针移动到数组最后一个元素的位置。它们作用的参数均为数组变量本身,而结合do...while又可实现数组的顺序和逆序遍历。</p> <p> </p> <p> </p> <p> </p> <p>复制代码</p> <p><?php </p> </p><p> echo 'key:'.key($arr).' current:'.current($arr).'<br>'; //当前键和值,默认指向数组第一个元素</p> <p> next($arr); //后移一个,指向第二个元素</p> <p> echo 'key:'.key($arr).' current:'.current($arr).'<br>'; //当前键和值</p> <p> next($arr); //再后移一个,指向第三个元素</p> <p> echo 'key:'.key($arr).' current:'.current($arr).'<br>'; //当前键和值</p> <p> prev($arr); //前移一个,指向第二个元素</p> <p> echo 'key:'.key($arr).' current:'.current($arr).'<br>'; //当前键和值</p> <p> end($arr); //移动到数组最后一个元素</p> <p> echo 'key:'.key($arr).' current:'.current($arr).'<br>'; //当前键和值</p> <p> reset($arr); //移动到数组第一个元素</p> <p> echo 'key:'.key($arr).' current:'.current($arr).'<br>'; //当前键和值</p> <p> </p> <p> </p> <p> </p> <p> </p>

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

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

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen

Die Methode zur Verwendung einer foreach-Schleife zum Entfernen doppelter Elemente aus einem PHP-Array ist wie folgt: Durchlaufen Sie das Array und löschen Sie es, wenn das Element bereits vorhanden ist und die aktuelle Position nicht das erste Vorkommen ist. Wenn beispielsweise in den Datenbankabfrageergebnissen doppelte Datensätze vorhanden sind, können Sie diese Methode verwenden, um diese zu entfernen und Ergebnisse ohne doppelte Datensätze zu erhalten.

Zu den Methoden zum tiefen Kopieren von Arrays in PHP gehören: JSON-Kodierung und -Dekodierung mit json_decode und json_encode. Verwenden Sie array_map und clone, um tiefe Kopien von Schlüsseln und Werten zu erstellen. Verwenden Sie Serialize und Deserialize für die Serialisierung und Deserialisierung.

Der Leistungsvergleich der PHP-Methoden zum Umdrehen von Array-Schlüsselwerten zeigt, dass die Funktion array_flip() in großen Arrays (mehr als 1 Million Elemente) eine bessere Leistung als die for-Schleife erbringt und weniger Zeit benötigt. Die for-Schleifenmethode zum manuellen Umdrehen von Schlüsselwerten dauert relativ lange.

Die mehrdimensionale Array-Sortierung kann in Einzelspaltensortierung und verschachtelte Sortierung unterteilt werden. Bei der Einzelspaltensortierung kann die Funktion array_multisort() zum Sortieren nach Spalten verwendet werden. Bei der verschachtelten Sortierung ist eine rekursive Funktion erforderlich, um das Array zu durchlaufen und zu sortieren. Zu den praktischen Beispielen gehören die Sortierung nach Produktname und die Sortierung von Verbindungen nach Verkaufsmenge und Preis.

Die PHP-Funktion array_group_by kann Elemente in einem Array basierend auf Schlüsseln oder Abschlussfunktionen gruppieren und ein assoziatives Array zurückgeben, wobei der Schlüssel der Gruppenname und der Wert ein Array von Elementen ist, die zur Gruppe gehören.

Die beste Vorgehensweise zum Durchführen einer Array-Deep-Kopie in PHP besteht darin, json_decode(json_encode($arr)) zu verwenden, um das Array in einen JSON-String zu konvertieren und ihn dann wieder in ein Array umzuwandeln. Verwenden Sie unserialize(serialize($arr)), um das Array in eine Zeichenfolge zu serialisieren und es dann in ein neues Array zu deserialisieren. Verwenden Sie den RecursiveIteratorIterator, um mehrdimensionale Arrays rekursiv zu durchlaufen.

PHP ist eine häufig verwendete serverseitige Skriptsprache, die in den Bereichen Website-Entwicklung und Datenverarbeitung weit verbreitet ist. In PHP ist es eine sehr häufige Anforderung, die Werte in einem Array nach Größe zu sortieren. Mithilfe der integrierten Sortierfunktion können Sie Arrays ganz einfach sortieren. Im Folgenden wird anhand spezifischer Codebeispiele erläutert, wie Sie mit PHP die Werte in einem Array nach Größe sortieren: 1. Sortieren Sie die Werte im Array in aufsteigender Reihenfolge:

Mit der Funktion array_group() von PHP kann ein Array nach einem angegebenen Schlüssel gruppiert werden, um doppelte Elemente zu finden. Diese Funktion durchläuft die folgenden Schritte: Verwenden Sie key_callback, um den Gruppierungsschlüssel anzugeben. Verwenden Sie optional value_callback, um Gruppierungswerte zu bestimmen. Zählen Sie gruppierte Elemente und identifizieren Sie Duplikate. Daher ist die Funktion array_group() sehr nützlich, um doppelte Elemente zu finden und zu verarbeiten.
