PHP言語で連想配列の指定キーにて並び替える方法.

2024.06.04

Logging

おはようございます、PHP言語で連想配列の指定キーにて並び替える方法は下記です.下記の方法を行うことにより日付キーかつ降順で並び替えを行えるようになります.よく使う関数かどうかは分からないけど頭の片隅に残しておいた方が良い気がしましたので記事にしました.

<?php
$data = [
    [
    'title'=>'Aタイトル',
    'date'=>'2024.05.31 05:00',
    ],
    [
    'title'=>'Cタイトル',
    'date'=>'2024.05.30 05:00',
    ],
    [
    'title'=>'Bタイトル',
    'date'=>'2024.05.31 07:10',
    ],
];
$dateArray = array_column($data, 'date');
array_multisort($dateArray, SORT_DESC, $data);
var_dump($data);

因みに上記の内容(ソース・コード)を実行すると下記の結果が返ってきます.いやーarray_columnとarray_multisortの関数は良いですよね、便利です😌ということで技術共有でした.

array(3) {
  [0]=>
  array(2) {
    ["title"]=>
    string(13) "Bタイトル"
    ["date"]=>
    string(16) "2024.05.31 07:10"
  }
  [1]=>
  array(2) {
    ["title"]=>
    string(13) "Aタイトル"
    ["date"]=>
    string(16) "2024.05.31 05:00"
  }
  [2]=>
  array(2) {
    ["title"]=>
    string(13) "Cタイトル"
    ["date"]=>
    string(16) "2024.05.30 05:00"
  }
}

明日へ続く.

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

$dateArray, array, array_column, array_multisort, Bタイトル&quot, data, lt, php, PHP言語, quot, quot;Aタイトル&quot, quot;date&quot, quot;title&quot, SORT_DESC, string, var_dump, 片隅, 連想配列, 関数,

php7.4から使用できるようになったアロー関数.

2024.06.01

Logging

おはようございます、php7.4から使用できるようになったアロー関数のことを記載しますと言っても書き方はこんな感じで結果は9になりますということしか言えない.

<?php
$a = fn($x,$y) => $x*$y;
var_dump($a(3,3));
<?php
$a = (fn($x,$y) => $x*$y)(3,3);
var_dump($a);

ちなみにカッコで包んで即時関数?にすることも出来ます.この方法の方がjavascript様な書き方なのかも知れないなって思います.そんなアロー関数ですが、あまり使用している方を見かけないですね.コードを書くときは無名関数で書くことが多い気がします.

無名関数が関数になってしまうようなコード量だったら関数にしてしまう方が良いのかも知れませんが、そのコードの内だけで使用するものなら関数にしなくても良い気もしますが、これはレビューする人によって違う気がしますので現場によりかけりだと思います😌.

なお、アロー関数はコールバック関数としても使用可能です📝.

明日へ続く.

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

-y, A`, fn, javascript様, lt, php, var_dump, X, アロー関数, かっこ, コード, コード量, コールバック関数, , 即時関数, 書き方, 無名関数, 現場, 結果, 関数,

配列を連想配列に置き換えるPHPの関数。便利すぎる😌

2023.06.11

Logging

おはようございます。配列を連想配列に置き換えるPHPの関数。便利すぎます。この関数を知ったのはつい最近の話ですが、こんな関数があるのだと知っているのと知らないとではコードの書きようが違うわけです、実際、PHPの関数を全部知っているわけではないのですが公式のドキュメントを見るといろいろな関数が存在することが分かります。

自分はあまり関数を知っているわけではないので余計なコードを書いている可能性があります、なので余計なコードを書かずに純粋な関数を使用してシンプルなコードがかければなと思います。

<?php
    var_dump(array_combine([1,2,3],["one","two","three"]));

そんな自分もこの頃はPHP公式サイトのドキュメントを見ることも以前よりは増えてきています。昔は公式サイトで調べるよりググって調べることが多かったのですが、この頃は公式サイトと検索のパラメーターであるsite:URL+キーワードを使用して調べることを心がけています。あとはchatGPTを使用します。

調べるときの手順にchatGPTという選択肢があるのですが、正解ばかりの回答ではないのでやはり今の段階では補助ツールですね。いまのAIの役割は面倒くさいと思われる組み合わせのパータンを全て網羅してくれて思いがけない答えを導き出せるという所にあると自分は思っています。なので、現段階では人の回答に答えるのにはあまり向いていないのかもしれないですね。

ともあれ、知らないより知っていたほうが良い業界なので勉強ですね。

著者名  @taoka_toshiaki

※この記事は著者が40代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

AI, array_combine, ChatGPT, lt, php, quot;one&quot, quot;three&quot, quot;two&quot, site, var_dump, ドキュメント, パータン, パラメーター, 手順, 正解, 組み合わせ, 連想配列, 配列, 関数,

無名関数、技術初歩垂れ流し。

2017.08.19

Logging


無名関数、技術初歩垂れ流しときます。
わからない人はわからないかもしれませんが、
分かる人にはわかるという・・・何ともそのまま何ですけどね。
無名関数を使うにあたってキーになるのは USEとcall_user_funcかな。
これさえ覚えとくと便利かもしれないなと思います。
習うより慣れよということでソースコード貼っときます。
じぶんの脳内は文字を読んで理解しているタイプではないので
図や絵柄など空間的な感覚でアルゴリズムを覚えています、なので
仕様書とか読んでもあまり頭に入ってくることがないのですね。
それよりかは、トライアンドエラーを繰り返して覚えるか、口頭などで
事細かに説明してもらったほうが、頭に入ってくることが多いです。
 

<?php
//無名関数1
$q = function($s){
    $ss = $s."FF15!!]]";
    return $ss;
};
define("ff",$q("[[ now on sale "));
//var_dump(ff);
//無名関数2
$hoge = ff;
$f = function() use ($hoge){
    return explode(" ",$hoge);
};
//var_dump($f());
//無名関数3
function mumei(){
    $m = 2222;
    $d = 22;
    return function() use ($m,$d){
      $a = $m * $d;
      return $a;
    };
}
$a = mumei();
//var_dump($a());
//無名関数4
if(is_array($s =
    call_user_func(function(){
        $r = [];
        for($i=0;$i<10;$i++){
            $r[$i] = $i;
        }
        return $r;
    })
)){
    //var_dump($s);
}
print(implode("<br>",explode("\n",'
string(23) "[[ now on sale FF15!!]]"
array(5) {
  [0]=>
  string(2) "[["
  [1]=>
  string(3) "now"
  [2]=>
  string(2) "on"
  [3]=>
  string(4) "sale"
  [4]=>
  string(8) "FF15!!]]"
}
int(48884)
array(10) {
  [0]=>
  int(0)
  [1]=>
  int(1)
  [2]=>
  int(2)
  [3]=>
  int(3)
  [4]=>
  int(4)
  [5]=>
  int(5)
  [6]=>
  int(6)
  [7]=>
  int(7)
  [8]=>
  int(8)
  [9]=>
  int(9)
}
')));

著者名  @taoka_toshiaki

※この記事は著者が30代前半に書いたものです.

Profile
高知県在住の@taoka_toshiakiです、記事を読んで頂きありがとうございます.
数十年前から息を吸うように日々記事を書いてます.たまに休んだりする日もありますがほぼ毎日投稿を心掛けています😅.
SNSも使っています、フォロー、いいね、シェア宜しくお願い致します🙇.
SNS::@taoka_toshiaki

OFUSEで応援を送る

タグ

$i&lt, AM, array, br&gt, call_user_func, function mumei, hoge, implode, int, now on sale FF15, return explode, return function, string, var_dump, アルゴリズム, トライアンドエラー, 仕様書, 技術初歩垂れ流し, 無名関数,