こんにちは、大学院でIT系の研究を専攻している、ひらりんです。
PHPはサーバーサイドで動く言語で、世界中の多くのWebサイトがPHPによって記述されています。一括してコンパイルするのではなく、実行時に一行ずつコンパイルされることから、随時コードを確認できるのも、初心者が取り掛かりやすい理由のひとつです。
本記事では、PHPのint型をstring型に変換する方法について説明します。PHPを始めとした、ほとんどのプログラムには、intとstringという型があります。文字列となっている数値を計算したいときなどは、型をそろえる必要があります。しかし、プログラミング言語によって型の変換方法は違い、混乱しちゃいますよね。
PHPのint型からstring型や、string型からint型への変換について、基本構文だけでなく実際のコードを用いた解説もするので、PHPの学習を始めた方やプログラムを書く予定の人はぜひ読んでみてください!
目次
そもそも「型」とは?
プログラミングを学習していると、必ず出てくる「型」とは何か、説明できるでしょうか?簡単に説明すると、どういう性質か?ということになります。
PHPを始めとしたプログラム言語では、変数に色々な値を代入することができます。例えば、「abc」などの文字列型や、「123」などの整数型、「3.14」などの浮動小数点型などがあります。
C言語など、他の言語によっては変数に何を格納するか宣言する必要があります。しかし、PHPでは代入される対象を勝手に判断し、型を定義してもらえます。そのため、PHPではプログラムを組む際に、あまり気にしないかもしれませんね。
PHPには、以下のような型が用意されています。
型名 | |
スカラー型 | 整数型(integer) |
浮動小数点型(float) | |
文字列型(string) | |
論理型(boolean) | |
複合型 | オブジェクト型(object) |
配列型(array) | |
特別型 | null型(null) |
リソース型(resource) |
なお、PHPの他の型については、以下の記事を参考にしてください!
ざっくりPHP入門(初心者〜中級者向け)PHPのint型とstring型
ここからは、PHPのint型とstring型について詳しく説明します。
まずは、PHPのint型について見てみましょう。int型とは、integerの頭を取っており、整数型のことを指します。「0」や「20」、「-50」などの整数のことですね!では、int型の扱い方について見てみましょう。
PHPを始めとしたプログラミングにおいて、四則演算などの計算をしたい場面がありますよね。その場合、int型では以下のようにして計算を行うことができます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
// int型の変数を定義 $a = 10; $b = 5; // 四則演算 $plus = $a + $b; // 足し算 $minus = $a - $b; // 引き算 $mul = $a * $b; // 掛け算 $div = $a / $b; // 割り算 // 計算結果を表示 echo "足し算の結果は". $plus. "です"; // 「足し算の結果は15です」と表示される echo "引き算の結果は". $minus. "です"; // 「引き算の結果は5です」と表示される echo "掛け算の結果は". $mul. "です"; // 「掛け算の結果は50です」と表示される echo "割り算の結果は". $div. "です"; // 「割り算の結果は2です」と表示される |
このように、変数$aと$bにはそれぞれ、「10」と「5」が代入されて、int型の変数と判定されています。整数を表すint型や、浮動小数のfloat型は、6~9行目のように計算をすることができます。その結果が、12行目以降に反映されて表示されます。
続いて、string型です。stringとは、文字列のことを表します。PHPを始めとした多くのプログラミング言語で、シングルクオーテーション「’文字’」やダブルクオーテーション「”文字”」で囲まれています。文字列はそのまま表示させたりすることもできますが、int型と同様に、以下のように変数に文字列を代入し、連結や置換などの操作を行えます。
1 2 3 4 5 6 7 |
// string型の変数を定義 $a = "おはよう"; $b = "5"; // 計算結果を表示 echo "朝の挨拶は". $a. "です"; // 「朝の挨拶はおはようです」と表示される echo "只今の時間は". $b. "時です"; // 「只今の時間は5時です」と表示される |
このように、「おはよう」といった文字列だけでなく、「5」のような値も文字列として捜査することができます。
なお、文字列の連結をさせる方法などについては、以下の記事を参考にしてください!
PHPで文字列を連結させる方法!カンマを使った方法も解説int型をstring型に変換しよう!
ここまで、PHPにおける型として、int型とそれ以外の違いなどについて説明してきました。先述したように、整数にて一般的な四則演算などの計算処理をしたい場合は、文字列などを整数のint型に変換する必要があります。ここでは、int型に変換する方法について説明します。
基本構文
1 |
strval(値) |
int型をstring型に変更するには、strval関数を用います。strvalの引数にint型を始めとした変数を指定します。
また、strval関数の他に以下のようにダブルクオーテーションで囲っても、string型に変換できます。
1 |
"$変数" |
このように、int型などの他の型が格納された変数をダブルクオーテーションで囲むと、文字列として扱うことができます。
では、実際の使用例について見てみましょう。
実践コード例
1 2 3 4 5 6 7 8 9 10 11 |
// 文字列にて変数$strを定義 $num_1 = 10; $num_2 = 1; // int型をstring型に変換 $str_1 = strval($num_1); $str_2 = "$num_2"; // 数値の結果を表示 echo "日本時間は". $str_1. "です"; // 「日本時間は10時です」と表示される echo "EU時間は". $str_2. "です"; // 「EU時間は1時です」と表示される |
では、プログラムを見てみましょう。2,3行目でそれぞれint型の値を$num_1と$num_2に格納しています。
6行目でstrval関数を使ってint型からstring型に変換、7行目ではダブルクオーテーションでstring型に変換しています。その結果を10,11行目で表示されています。
このように、PHPではstrval関数やダブルクオーテーションを用いることで、int型からstring型に変換することができます。
string型をint型に変換しよう!
ここからは、string型からint型に変換する方法を説明します。先述したように、整数にて一般的な四則演算などの計算処理をしたい場合は、文字列などを整数のint型に変換する必要があります。さっそく見ていきましょう!
基本構文
1 |
intval(値,基数) |
int型に変更するには、intval関数を用います。第一引数に変更対象の値を指定し、第二引数に基数(2進数、10進数など)を数値で指定します。なお、第二引数に指定がなかった場合は、自動的に10進数として処理されます。
では、実際の使用例について見てみましょう。
実践コード例
1 2 3 4 5 6 7 8 9 10 11 12 |
// 文字列にて変数$strを定義 $str = "10"; // 10進数のint型に変換 $num_1 = intval($str); // 2進数のint型に変換 $num_2 = intval($str,2); // 数値の結果を表示 echo $num_1; // 「10」と表示される echo $num_2; // 「2」と表示される |
文字列で定義された変数$strを、intval関数で数値に変換するプログラムを記述しました。5行目で10進数のint型に変換した値を$num_1に格納し、8行目で2進数のint型に変換した値を$num_2に格納しています。その結果が、11行目以降で表示されていますね。
このように、文字列に限らずint型以外の型から、int型に変換したい場合は、intval関数を用いることで簡単に型を変換することができます。
まとめ
いかがでしたでしょうか?今回は、PHPのint型からstring型と、string型からint型へ変換する方法について、基礎メソッドから実践的な使用方法まで説明しました。
PHPを始めとした、プログラミングにおいて、型について理解をしておくことは欠かせません。ぜひ理解を深めて、Webサービス作成やシステム構築に活かしてください。