Zusammenfassung der Verwendung von PHP-Array-Operationen

微波
Freigeben: 2023-03-11 17:48:01
Original
1461 Leute haben es durchsucht

PHP definiert Arrays

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

Es gibt zwei Hauptmethoden, um Arrays in PHP zu deklarieren:

  1. Arrays mit der Funktion array() deklarieren.

  2. 2. Weisen Sie Array-Elementen direkt Werte zu.

<?php    
    //array数组
    $users = [&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;];
    echo $users;//只会打印出数据类型Arra
    print_r($users);//Array ( [0] => a[1] => b[2] => c[3] => d)
    $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更合适
Nach dem Login kopieren

//Verwenden Sie eine Schleife, um alle Werte im Array anzuzeigen

  for($i = 0 ;$i < 5;$i++){
        echo $users[$i];
        echo &#39;<br/>&#39;;
    }
Nach dem Login kopieren

//Verwenden Sie count/sizeof, um die zu zählen Anzahl der Zellen im Array oder Anzahl der Objekte im Objekt Anzahl der Attribute

 for($i = 0; $i < count($users);$i++){
        echo $users[$i];
        echo &#39;<br/>&#39;;
    }
Nach dem Login kopieren

//Sie können das Array auch durch eine foreach-Schleife durchlaufen. Der Vorteil ist, dass Sie Schlüssel müssen nicht berücksichtigt werden

 foreach($users as $value){
    echo $value.&#39;<br/>&#39;;//点号为字符串连接符号
 }
//foreach循环遍历 $key => $value;$key和$value是变量名,可以自行设置
 foreach($users as $key => $value){
    echo $key.&#39;<br/>&#39;;//输出键
 }
?>
Nach dem Login kopieren

Erstellung Array benutzerdefinierter Schlüssel

<?php
    // 创建自定义的数组
    $array = ["a"=>1,"b"=>2,"c"=>3,"d","e"];
    //如果没有声明键,它会从零开始
    print_r($array);//array([a]=>1,[b]=>2,[c]=>3,[0]=>d,[1]=>e);
?>
Nach dem Login kopieren

Verwendung von every()

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


Each Der Zeiger zeigt auf das erste Schlüssel-Wert-Paar, gibt das erste Array-Element zurück, ruft sein Schlüssel-Wert-Paar ab und verpackt es in ein neues array

Verwendung von list()

list wird verwendet, um einigen Variablen Array-Werte zuzuweisen, siehe folgendes Beispiel:

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


Hinweis: Liste erkennt nur Indizes, deren Schlüssel Zahlen sind

Sortieren von Array-Elementen

Rückwärtssortierung: sort(), asort() und ksort() sind alle Vorwärtssortierungen, und natürlich gibt es entsprechende Rückwärtssortierungen

Implementierung der umgekehrten Sortierung: rsort(), arsort() und krsort().

Die Funktion array_unshift() fügt neue Elemente am Kopf des Arrays hinzu, und die Funktion array_push() fügt jedes neue Element am Ende des Arrays hinzu.

array_shift()删除数组头第一个元素,与其相反的函数是 array_pop(),删除并返回数组末 尾的一个元素。

array_rand()返回数组中的一个或多个键。

函数shuffle()将数组个元素进 行随机排序。

函数 array_reverse()给出一个原来数组的反向排序

数组的各类API的使用

注:count()和 sizeof()统计数组下标的个数
array_count_values()统计数组内下标值的个数

 <?php
        $numbers = array(&#39;100&#39;,&#39;2&#39;);
       sort($numbers,SORT_STRING);//按字符串排序,字符串只比较第一位大小
        print_r($numbers);//Array ( [0] => 100 [1] => 2 )
        $arr = array(&#39;trigkit4&#39;,&#39;banner&#39;,&#39;10&#39;);
        sort($arr,SORT_STRING);
        print_r($arr);//Array ( [0] => 10 [1] => banner [2] => trigkit4 )
        shuffle($arr);
        print_r($arr);//随机排序
        $array = array(&#39;a&#39;,&#39;b&#39;,&#39;c&#39;,&#39;d&#39;,&#39;0&#39;,&#39;1&#39;);
        array_reverse($array);
        print_r($array);//原数组的反向排序。 Array ( [0] => a [1] => b [2] => c [3] => d [4] => 0 [5] => 1 )
  ?>
Nach dem Login kopieren

//数组的拷贝

        $arr1  = array( &#39;10&#39; , 2);
     $arr2  =  &$arr1 ;
     $arr2 [] =  4 ;  // $arr2 被改变了,$arr1仍然是array(&#39;10&#39;, 3)
     print_r($arr2);//Array ( [0] => 10 [1] => 2 [2] => 4 )
Nach dem Login kopieren

//asort的使用

 $arr3  = & $arr1 ;//现在arr1和arr3是一样的
  $arr3 [] =  &#39;3&#39; ;
  asort($arr3);//对数组进行排序并保留原始关系
  print_r($arr3);// Array ( [1] => 2 [2] => 3 [0] => 10 )
Nach dem Login kopieren

//ksort的使用

  $fruits = array(&#39;c&#39;=>&#39;banana&#39;,&#39;a&#39;=>&#39;apple&#39;,&#39;d&#39;=>&#39;orange&#39;);
   ksort($fruits);
   print_r($fruits);//Array ( [a] => apple [c] => banana [d] => orange )
Nach dem Login kopieren

//unshift的使用

    array_unshift($array,&#39;z&#39;);//开头处添加一元素
  print_r($array);//Array ( [0] => z [1] => a [2] => b [3] => c [4] => d [5] => 0 [6] => 1 )
Nach dem Login kopieren

//current(pos)的使用

  echo current($array);//z;获取当前数组中的当前单元
Nach dem Login kopieren


//next的使用

 echo next($array);//a;将数组中的内部指针向前移动一位
Nach dem Login kopieren


//reset的使用

 echo reset($array);//z;将数组内部指针指向第一个单元
Nach dem Login kopieren


//prev的使用

  echo next($array);//a;
   echo prev($array);//z;倒回一位
Nach dem Login kopieren
 //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

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

for循环遍历

 <?php
       $value = range(0,120,10);
        for($i=0;$i<count($value);$i++){
        print_r($value[$i].&#39; &#39;);//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 &#39;<br/>&#39;;        
    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(&#39;a&#39;,&#39;e&#39;);        
     $arrayFilled = array_fill(1,2,$num);//array_fill(start,number,value)        
     echo &#39;<pre class="brush:php;toolbar:false">&#39;;        
     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



Das obige ist der detaillierte Inhalt vonZusammenfassung der Verwendung von PHP-Array-Operationen. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage