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, アロー関数, かっこ, コード, コード量, コールバック関数, , 即時関数, 書き方, 無名関数, 現場, 結果, 関数,

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

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, アルゴリズム, トライアンドエラー, 仕様書, 技術初歩垂れ流し, 無名関数,