PHPの参考書で勉強していて、現在の日付を日付フォーマットで出力するということを以下のコードで実行しました。
PHP
1class Day{ 2 3 public static function fmt($date){ 4 $str = $date->format('y年m月d日'); 5 return $str; 6 } 7 8} 9 10$now = new DateTime(); 11echo Day::fmt($now);
実行結果は正しく表示されたのですが、実行後にコードを見てみたら
('y年m月d日') の部分が ('yå¹´m月dæ—¥') このように文字化けしていました。
文字化けしたまま再び実行しても結果は正しく表示されます。
何度('y年m月d日')に戻しても、実行するとコードは文字化けします。
なぜでしょうか?
また、もう一つ疑問な点がありまして、、、
$now = new DateTime();
これはPHPが元から用意しているDateTimeクラスから$nowというインスタンスを作成しており、
->format() はDateTimeクラスのformatメソッドを使用している。という認識で正しいでしょうか?
回答いただけると幸いです。
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2017/08/30 08:59