Smarty講座の第1回の$smarty.nowで - PHPプロ!Q&A掲示板
キーワード / Smarty  
講座内容の通りに実行しているつもりですが、hello.phpを実行すると、
結果が以下のように表示されます。
- こんにちは、あなたの名前さん!! 今日は
- Warning: date_format() expects parameter 1 to be DateTime, integer given in
- C:\Apache2\smarty\templates_c\%%6D^6D7^6D7C5625%%test.tpl.php on line 7
- です。
template.tplの内容
- こんにちは、{$name}さん!!
- 今日は{$smarty.now|date_format:'%Y年%m月%d日'}です。
コンパイルしてできた%%6D^6D7^6D7C5625%%test.tpl.phpの内容は以下となっています。
- /* Smarty version 2.6.19, created on 2008-06-04 17:36:42
- compiled from test.tpl */
- require_once(SMARTY_CORE_DIR . 'core.load_plugins.php');
- smarty_core_load_plugins(array('plugins' => array(array('modifier', 'date_format', 'test.tpl', 2, false),)), $this);
- こんにちは、 echo $this->_tpl_vars['name'];
- さん!!
- 今日は echo ((is_array($_tmp=time())) ? $this->_run_mod_handler('date_format', true, $_tmp, '%Y年%m月%d日') : date_format($_tmp, '%Y年%m月%d日'));
- です。
エラーレベルが厳しすぎるのかと思い、php.iniのerror_reportingの設定を
E_ALLからE_STRICTに変更してみましたが、以下のように年月日が表示されません。
- こんにちは、あなたの名前さん!! 今日はです。
なお、PHP Version 5.2.3、Smarty Version 2.6.19を使用しています。
初歩的な質問で申し訳ありませんが、ご教授いただきたくよろしくお願いいたします。
この質問への意見の募集は締め切られ、ポイントは既に配分されました。
意見を投稿することはできますが、ポイントを受け取ることはできません。





ページのトップへ


shimix様、いつもわかりやすい説明をありがとうございます。 「includeはエディタでコピペした状態と同じ」 この表現、私も授業で使わせていただきたいと思います。