PHPの数値と文字列でビックリした話
こんにちは!
おーかいです。
今回タイトル通りビックリした話があるので書きます。
本題
先日、友達にPHPの文字列と数値を教えていた際に友達がこれ絶対エラーなるよ!!というコードを打ったので実行するまで声をかけずに見守っていました。
実行ボタン(ブラウザのリロード)をクリック
自分は、ほら来た!エラー出るよね!と解説しようとタイミングを見計らっていたのにまさかのエラー出ず、、、、。
その時友達が書いていたコードはこちらです。
<?php
$hoge1 = 200;
$hoge2 = "100だったわ";
$total = $hoge1 + $hoge2;
echo $total;
?>
これ、文字列と数値の足し算なのでフツーエラー出ますよね??
実行結果がこちらです。
300
え????
なんでだろう、、、。
なんでだろうを調べてみた。💁
こちら、PHP特有の現象らしいです。
普通、ダブルクォーテーションやシングルクォーテーションで囲まれたものは文字列として!、囲まれていないものは数値として扱うのがプログラミングでの常識みたいな部分がありますが、
phpももちろんそのルールに基づいて囲まれていたら文字列変換、囲まれていなければ、数値変換されます。
しかし、文字列でも最初に来るものが数値だった場合、今回のように計算をするとこれは数値だ!と判断し、計算可能な部分だけを切り取り計算結果を出力するようです。
個人的には思いもよらぬ大発見で感動しました。
これが何に使えるのか!と言われると、言葉出ず、、、ですが。すっごい興奮したので記事に書きました。😁😁😁
終わりに
やっぱプログラミングって楽しいです。
やったことが自分の実力に繋がるしそれを実感できる。知識が増えるだけでも興奮しちゃいます。
知らなかったり、間違ったりしても全く恥ずかしいと思わないんですよね。
むしろ、自分の場合知らない前提で全ての知識を聞くスタンスなので、入ってくる情報全てに興奮してできるようになるとヤベーー超楽しいと思っちゃいます。
自分がすごいなって思う人たちに近づけている感触と絶対前進しているっていう確信があるから睡眠忘れるくらいやれる。
自分自身プログラミングに出会ったことは一生感謝ですね笑(プログラミングをやろうと決断したときの自分にww)
最近noteの記事で見つけた好きな言葉があるので書きます。(勝手に書いていいのかな?分かりませんが、、。)とある会社の元CTOの記事で見たのですが
「1人の誰でもない人がプログラミングを学んで、世界中で使われるサービスが生まれる」
この言葉今日の自分はすげー感動しました。
まさに俺じゃん!と言えるようにこれからも精進していきます。💪💪
応援よろしくお願いします🙇🏻♂️