可変長引数リストって忘れがちやな。

2018.08.08

Logging


 

<?php
function hoge(...$hoge) {
     foreach($hoge as $key=>$val){
        sprintf("key = %02d val = %02d",$key,$val);
     }
}
hoge(1);
hoge(1,3,2);
//アンパック
function hoge2($i, $ii) {
    return $i + $ii;
}
$hoge3 = [3, 3];
echo hoge2(...$hoge3);

 
残業したくない自分ですが、仕事に追われています・・・。
なぜに8月に仕事がこんなに山積みなんだと・・・凹んでいます。
今日は可変長引数リストのことについて。
可変長引数リストって使わなかったら忘れがちやな事ですよね?
引数の変数が可変する、ですから可変長引数リスト!?
簡単ですね・・・。
javascriptにもあります。
ES6からPHPと同じ様になっているそうです。
ES6ってChrome42ぐらいからかな。たぶんIEとかでは使用できないのかも。
クックパッドの開発者ブログにやり方書いてます。
https://techlife.cookpad.com/entry/2015/02/02/094607
余談:
PHP5.6からPHP7へ移行している時代かもしれないですが
まだまだレガシーコードで動いているサイトもあると思います。
いや結構あると思います、改修したくても出来ない・・・。
そして新たなレガシーコードみたいなのを生んでいる自分もいます。
なぜ、レガシーコードみたいなのでコード書くのかという理由は
「平均的なコードだから」です。
高知県は特にレガシーコードみたいなのが多い気がします。
言語ってバージョンが上がれば
使われない関数とかセキュリティが甘い関数などは
推奨から非推奨移行して最後は使用不可に
なりますよね・・・あれってどうにかならないものなのか。
そしてライブラリ使っていたりすると破滅的なダメージになります。
そういう面ではJSのライブラリは持ちが良い気がします。
改修したくても・・・時間がない。
 

著者名  @taoka_toshiaki

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

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

タグ

$hoge as, $hoge3, AM, Chrome42, echo hoge2, ES6, function hoge2, PHP5.6, PHP7, sprintf, アジャイルサムライ−達人開発者, アンパック, ライブラリ, レガシーコード, 可変長引数リスト,