エンジニアのひよこ_level10

毎日更新してた人。たまに記事書きます。

PHPの==とか=って実際何してるんだろう【96日目】

演算子だってプログラム

何気なく書いてる+=ってありますが、これって何をしてるのでしょう。
プログラムによって仕様が違うわけで。

そこで先輩に教えていただいた言葉。
『“演算子“とは全てただの関数である』

あーなるほど、引数が2つあって、関数が動いてると考えると確かに・・・

ってことで先輩に問題出されました

"比較演算子"( <, >, ==, <=, >=)とはどのような関数でしょう?

"代入演算子"(=)とはどのような関数でしょう?

「◯◯をinputとし、◯◯をoutputする関数」って答えると良いよと言われたので、
php -aを駆使しながらいろいろ考えましたと。

これ、何気に難しかったです。

私の回答

"比較演算子"

a == b

aとbをinputとし、比較結果をbooleanでoutputする関数

"代入演算子"

$a = $b

[$aのアドレス]と$bをinputし、
[$aのアドレス]に$bを書き込み、
$aをoutputする

$aか$bかどっちを出力してるか調べるの大変だった。

代入演算子の回答を出すために使ったプログラム

$a = 0;
var_dump($a);
var_dump($b);
var_dump($a = $b);
var_dump($a);
var_dump($b);
var_dump($a = $a);
var_dump($a = $b = $c);

php -aで、エラーの出力、エラーが出ても実行する環境じゃないと再現出来ないかも。

実行結果は今手元にないので、明日の記事にしますね。

結論

何気なく使ってるものも意味がある。よく考察すると、理解が深まって、応用ができるようになるよ。

日記

勉強捗ってますね!いい感じにいろいろインプット出来てます!が!

vue、chart.jsが・・・苦戦・・・なんで動かないのこれ(´;ω;`)

ってことで、今日無理だったら明日以降友人に聞こうと思いましたまる。

運動

プログラミング

このあとやります。ただ予定あるので、30分プログラミングと1.5kmエアロバイクの予定。

時間ないからさくっと腹筋ローラーもやっておこう。