PHP講座入門

型の自動変換

文字+数字=?

 さて、いろいろな型を学びました。次のコードを見てください。

<?php
$abc = "1230" + 4;

echo $abc;
 ん、おかしいですね。文字列型に整数型を足しています。これはエラーになるんでしょうか?

 $abcを出力させてみると、1234という数字が返って来ます。

 そうです。PHPが型を変換して計算してくれているんです。

 

 では、本当の文字列に数字を足すとどうなるんでしょうか?

<?php
$abc = "abc" + 4;

echo $abc;
 とやると、4になります。変換できない文字は0とみなされます

 

 では、こんな例はどうでしょうか?

<?php
$abc = "10abc" + 4;

echo $abc;
 とやると、14になります。先頭から数字に変換できるところまで変換してくれるということです。

 

 ちなみに、文字列が小数点を含む場合はfloat型に変換されます。

<?php
$abc = "10.25 desu" + 4;

echo $abc;
 これは14.25になります。

 この文字列から数字への自動変換というのが、一番引っかかりやすいところなので、覚えておきましょう!

 

 他にもキャストという方法で型を強制的に変換することもできますが、講座の先の方で出てきたときに考えましょう。

目次

×