スポンサードリンク
PHPExcelでエクセルファイルを作成した時に
普通にPHPで計算したものを
出力していたのですが、
そのままだと数字が文字列の型になっているため
テンプレートの数式が使えないことがありましたので
型を変換するキャストをしてみました。
スポンサードリンク
型のキャスト
計算した結果がString型のため
整数型のint型にキャストさせます。
<?php $sum = 10; // $sum は文字列です $result = (int) $sum; // $result は整数です ?>
上記のように
変換しようとする型を括弧で括って、
キャストする変数の前に置きます。
それだけで、型のキャストができます。
今回だと、文字列を整数にキャストさせています。
この状態でPHPExcelで出力させたところ
問題なく整数で出力されて
テンプレートに書いてった数式も使えるようになりました。
他にもキャストできるものは以下のものがあります。
(int), (integer) | 整数へのキャスト |
---|---|
(bool), (boolean) | 論理値へのキャスト |
(float), (double), (real) | float へのキャスト |
(string) | 文字列へのキャスト |
(array) | 配列へのキャスト |
(object) | オブジェクトへのキャスト |
(unset) | NULL へのキャスト (PHP 5) |
PHPは型を意識しなくても使えるので
こういう時に、そうだったって思い出しますね。
(参考)
型の相互変換
スポンサードリンク