URLの最後のパラメータにfloat(少数)を入れ、その値を取得すると小数点以下が表示されません。
値の使用目的は、バージョンの値をもらって表示切替の判断基準として使う予定です。
1.1->Aページ
1.2->Bページ
といったことをやろうとしております。
--やりたい事--
・小数点以下も表示されるようにしたいです。
└URLの最後に「/」を入れた場合、小数点以下も表示されることは知っておりますが、他の方法も無いかを知りたいです。
・値がstringで返ってくるので、floatで返すようにしたいです。
これらは、phpの仕様なのでしょうか?
開発環境
・Windows10
・PHP
・FuelPHP
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答2件
0
明確な答えになっていないかもしれませんが・・・
getで値を送るとき、一つ一つパラメーターにして書き連ねるよりも、
serializeで配列を文字列に固めてしまうと楽です。
暗号化したい場合も楽になるので、お勧めです。
<?php $array_test = array( 'boolean_type' => true, 'int_type' => 123456, 'float_type' => 1.234, 'date_type' => date("Y/m/d", strtotime("2017/1/1")), 'string_type' => 'abcd', 'array_type' => array( 'aa' => 1, 'bb' => 2, 'cc' => 3, 'dd' => 4), ); var_dump($array_test); $seri = serialize($array_test); print_r($seri); $reseri = unserialize($seri); var_dump($reseri);
結果
array(6) { ["boolean_type"]=> bool(true) ["int_type"]=> int(123456) ["float_type"]=> float(1.234) ["date_type"]=> string(10) "2017/01/01" ["string_type"]=> string(4) "abcd" ["array_type"]=> array(4) { ["aa"]=> int(1) ["bb"]=> int(2) ["cc"]=> int(3) ["dd"]=> int(4) } } a:6:{s:12:"boolean_type";b:1;s:8:"int_type";i:123456;s:9:"float_type";d:1.234;s:9:"date_type";s:10:"2017/01/01";s:11:"string_type";s:4:"abcd";s:10:"array_type";a:4:{s:2:"aa";i:1;s:2:"bb";i:2;s:2:"cc";i:3;s:2:"dd";i:4;}} array(6) { ["boolean_type"]=> bool(true) ["int_type"]=> int(123456) ["float_type"]=> float(1.234) ["date_type"]=> string(10) "2017/01/01" ["string_type"]=> string(4) "abcd" ["array_type"]=> array(4) { ["aa"]=> int(1) ["bb"]=> int(2) ["cc"]=> int(3) ["dd"]=> int(4) } }
日付が文字列なのはお約束です。
投稿2017/04/05 04:29
総合スコア278
0
ベストアンサー
FuelPHPは触ったことがないため、Fuel独自の仕様なのかもしれませんが。
手元のPHP7環境で試してみたところ、問題なく取得できました。
PHP
1<?php 2$float = $_GET['float']; 3var_dump($float); 4$float2 = (float)$float; 5var_dump($float2); 6$float3 = 1*$float; 7var_dump($float3); 8?>
上記のようなコードを作成し、http://example.com/?float=3.141592 にアクセスした結果
string(8) "3.141592" float(3.141592) float(3.141592)
となりました。
型キャストでも暗黙的キャストでもどちらも機能しているようです
投稿2017/04/05 04:14
総合スコア5405
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/04/05 08:28
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/04/05 05:39 編集