PHPの配列操作の使用法の概要
php で配列を定義する
<?php $array = []; $array["key"] = "value"; ?>
PHP で配列を宣言するには、主に 2 つの方法があります:
array() 関数を使用して配列を宣言します。
2. 配列要素に値を直接代入します。
<?php //array数组 $users = ['a','b','c','d']; 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更合适
//ループを通じて配列内のすべての値を表示します
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 ループを使用して配列を走査することもできます。利点は、キーを考慮する必要がないことです
foreach($users as $value){ echo $value.'<br/>';//点号为字符串连接符号 } //foreach循环遍历 $key => $value;$key和$value是变量名,可以自行设置 foreach($users as $key => $value){ echo $key.'<br/>';//输出键 } ?>
カスタム キーの配列を作成します
<?php // 创建自定义的数组 $array = ["a"=>1,"b"=>2,"c"=>3,"d","e"]; //如果没有声明键,它会从零开始 print_r($array);//array([a]=>1,[b]=>2,[c]=>3,[0]=>d,[1]=>e); ?>
each() の使用
<?php //通过为数组元素赋值来创建数组 $array['key'] = 22; echo $array.'<br/>';//Array //因为相关数组的索引不是数字,所以无法通过for循环来进行遍历操作,只能通过foreach循环或list()和each()结构 //each的使用 //each返回数组中当前的键/值对并将数组指针向前移动一步 $users = array('key'=>22,'key1'=>20,'key2'=>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 ?>
それぞれのポインタは最初のキーと値のペアを指し、最初の配列要素を返し、そのキーと値のペアを取得して、新しい配列にパッケージ化します
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 ?>
注: リストは、キーが数字であるインデックスのみを認識します
配列の並べ替え要素
逆ソート:sort()、asort()、および ksort() すべての正のソート、もちろん、対応する逆ソートがあります
逆ソートを実現します: RSORT ()、ARSORT ()、および KRSORT。 ()。
array_unshift() 関数は配列の先頭に新しい要素を追加し、array_push() 関数は配列の末尾に新しい要素をそれぞれ追加します。
array_shift()删除数组头第一个元素,与其相反的函数是 array_pop(),删除并返回数组末 尾的一个元素。
array_rand()返回数组中的一个或多个键。
函数shuffle()将数组个元素进 行随机排序。
函数 array_reverse()给出一个原来数组的反向排序
数组的各类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 ) ?>
urrent():每个数组都有一个内部指针指向他的当前单元,初始指向插入到数组中的第一个元素
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 }?>
数组的实例
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 ) ?>
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 ) ?>
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); ?>
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 ) ?>
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?>
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 ) ?>
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 ) ?>
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 } ?>
以上がPHPの配列操作の使用法の概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











セッションハイジャックは、次の手順で達成できます。1。セッションIDを取得します。2。セッションIDを使用します。3。セッションをアクティブに保ちます。 PHPでのセッションハイジャックを防ぐための方法には次のものが含まれます。1。セッション_regenerate_id()関数を使用して、セッションIDを再生します。2。データベースを介してストアセッションデータを3。

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

PHP開発における固体原理の適用には、次のものが含まれます。1。単一責任原則(SRP):各クラスは1つの機能のみを担当します。 2。オープンおよびクローズ原理(OCP):変更は、変更ではなく拡張によって達成されます。 3。Lischの代替原則(LSP):サブクラスは、プログラムの精度に影響を与えることなく、基本クラスを置き換えることができます。 4。インターフェイス分離原理(ISP):依存関係や未使用の方法を避けるために、細粒インターフェイスを使用します。 5。依存関係の反転原理(DIP):高レベルのモジュールと低レベルのモジュールは抽象化に依存し、依存関係噴射を通じて実装されます。

phpstormでCLIモードをデバッグする方法は? PHPStormで開発するときは、PHPをコマンドラインインターフェイス(CLI)モードでデバッグする必要がある場合があります。

システムが再起動した後、UnixSocketの権限を自動的に設定する方法。システムが再起動するたびに、UnixSocketの許可を変更するために次のコマンドを実行する必要があります:sudo ...

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。
