PHP 2 次元配列のキー名インスタンス関数によるグループ化と追加_PHP チュートリアル
この記事では、データベースからデータを取得する場合は SELECT SUM(t_value), t_id FROM t_table GROUP BY t_id を実行できますが、PHP の 2 次元配列を特定のキー名でグループ化して加算するプログラム例を紹介します。 PHP プログラムで同様の問題に対処するのは少し面倒です
/* 関数: 特定のキー名を持つ 2 次元配列をグループ化して追加し、新しい 2 次元配列を返します
* パラメーターの説明: $arr-source array; $new_arr-get 追加後 new array; $target_key - グループ化するキー名
*/
function add_array($arr, &$new_arr, $target_key) {
$num = count($new_arr); // 新しい配列のサイズを計算します。配列も 2 次元であり、最初の次元はここで計算されます
for ($i = 0; $i < $num; $i++) {
重複を避けるために新しい配列にすでに存在します
// この関数以降ループ内で呼び出され、新しい配列には複数の要素が含まれる場合があります。新しい配列内のすべての要素を比較する必要があります。
新しい配列の要素は 1 次元配列であり、新しい 2 つのグループ キー名 - $ i の次元配列 動的
IF ($ arr [$ target_key]! = $ New_arr [$ i] [$ target_key]) {//) {//) {//) {//) {//新しい配列のグループ化キー名は現在のソース配列のグループ化キー名と等しい
$cmp_num++; // そうでない場合は、比較の数が 1 つ増加します
} else {// 等しい場合は、現在のグループ化キーname はすでに存在します X $ tar_exist = true; // 識別の存在を true に設定します
$ tar_Key = $ i; // 新しい配列内の現在のグループ キーの番号インデックスを返します
// パンの外にジャンプします。 cycle}}} // 比較の回数が新しい配列のサイズと同じ場合、現在のグループ化キー名が新しい配列にないことを示します。 存在フラグを false に設定します
if ($cmp_num == $num)
$tar_exist = false;
if ($tar_exist) {//グループ化キーの名前が既に存在する場合、グループの配列要素を追加します
foreach ($arr as $key => $value) {
使用の使用を使用して、sull- outを使用してOff- - - - を追加します。新しいグループキー名を設定し、グループの配列要素を追加します。 ' s ' ‑ ‑ ‑ ‑ ‑ ‐ // } }デジタルであり、0 から始まるため、新しい配列内の新しいグループのインデックスを $ NUM,
// の代わりに $ NUM+1 に直接使用できます。
$ new_arr [$ num] [$ target_key] = $ arr [ $target_key];
foreach ($arr as $key => $value) {
if ($key != $target_key) {//要素の値グループ名に対応してください
$arr = array(
array('group_id' => 13, 'team_price' => 88.00, 'Satpay_price' => 85.00, 'team_id' => 348, 'origin' => 440, 'ゲイン' => 14.45, '数量' => 5),
array('group_id' => 13, 'team_price' => 12.00, 'Satpay_price' => 11.00, 'team_id' => 344 、'origin' => 'gain' => 2.76、'quantity' => 3)、
array('group_id' => 14, 'team_price' => 4.99 ; 4.60、'チームID' => 335、'オリジン' => 0.31915、'数量' => 14、'チーム価格' => 12.00, 'Satpay_price' => 'team_id' => 'gain' => 1.84, 'quantity' => 'group_id' => 15、'team_price' => 11.00、'origin' => 1.84、 => 2)、
);
$new_arr = array();
foreach ($arr as $key => $value) {
add_array($value, &$new_arr, 'group_id'); //这里我们按group_id进行分组相加
}
var_dump($new_arr);
http://www.bkjia.com/PHPjc/824990.html

ホット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):高レベルのモジュールと低レベルのモジュールは抽象化に依存し、依存関係噴射を通じて実装されます。

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

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

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

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