俺がPHPでテンプレートエンジンを使わないで素のHTMLで書く理由

基本的に仕事では携帯のHTMLを書くから

それだけ

携帯のHTMLってさ 端末、キャリア毎に仕様が統一されてなかったり、世代毎に書き方が変わったりするんですよね。

そもそもHDMLとかCHTMLとかWMLとかXHTMLとか

色々あんねん。

しかも その中にもi-mode向けとか色々仕様が違う。

で、現状それに対応するテンプレートが無い。

そして作る気もさらさらない。

だって知ってるからif文書いたらいいじゃん 的な考え
もしくは設定ファイルに定数を大量に用意してCSS部分はそこで全て定義しておくとか

たとえば以下みたいにinputタグの入力モードの設定とイメージの回り込みと解除の指定を定数化しておく

<?php
if('docomo' == $carrier){
	define('HIRAGANA'	,' style="-wap-input-format:&quot;*&lt;ja:h&gt;&quot;" istyle="1" ');
	define('HANKAKUKANA',' style="-wap-input-format:&quot;*&lt;ja:hk&gt;&quot;" istyle="2" ');
	define('ALPHABET'	,' style="-wap-input-format:&quot;*&lt;ja:en&gt;&quot;" istyle="3" ');
	define('NUMERIC'	,' style="-wap-input-format:&quot;*&lt;ja:n&gt;&quot;"  istyle="4" ');
	define('IMGLEFT'	,' style="float:left;"');
	define('IMGRIGHT'	,' style="float:right;"');
	define('FLOATCLEAR'	,' <div style="clear:both"></div>');
}elseif('ezweb' == $carrier){
	define('HIRAGANA'	,' istyle="1" style="-wap-input-format:*M;"');
	define('HANKAKUKANA',' istyle="2" style="-wap-input-format:*M"');
	define('ALPHABET'	,' istyle="3" style="-wap-input-format:*m"');
	define('NUMERIC'	,' istyle="4" style="-wap-input-format::N"');
	define('IMGLEFT'	,' style="vertical-align:top;" align="left"');
	define('IMGRIGHT'	,' style="vertical-align:top;" align="right"');
	define('FLOATCLEAR'	,' <br clear="all" />');
}elseif('softbank' == $carrier){
	define('HIRAGANA'	,' istyle="1" MODE = "hiragana"    ');
	define('HANKAKUKANA',' istyle="2" MODE = "hankakukana" ');
	define('ALPHABET'	,' istyle="3" MODE = "alphabet"    ');
	define('NUMERIC'	,' istyle="4" MODE = "numeric"     ');
	define('IMGLEFT'	,' style="vertical-align:top;" align="left"');
	define('IMGRIGHT'	,' style="vertical-align:top;" align="right"');
	define('FLOATCLEAR'	,' <br clear="all" />');
}else{
	define('HIRAGANA'	,'');
	define('HANKAKUKANA','');
	define('ALPHABET'	,'');
	define('NUMERIC'	,'');
	define('IMGLEFT'	,' style="vertical-align:top;" align="left"');
	define('IMGRIGHT'	,' style="vertical-align:top;" align="right"');
	define('FLOATCLEAR'	,' <br clear="all" />');
}

って定義しておいて
使うときは

<input type = "text" name = "tell" value = "" <?php echo NUMERIC;?>><br />

とかしてやるとか
デザイナさんもこういうファイル見れば書き方わかるっしょ
つか解かれ

ぶっちゃけベンチャーでやってりゃそこまで分業仕切れてないのでデザイナであろうと軽いPHPは触れる
というか触れるようになるわ

むしろjpgとかでデータもらってその通り実装するとか素のxhtml(docomo向け)もらってこっちで3キャリ対応に書き直す方が圧倒的に早い
気がする

って言ってもこうやって定数だけでカバーできないような部分なんて腐るほどあるわけですよ。

結局そこはif文書いて回避するんだし、テンプレートエンジン使う意味なくね? と思う。

広告はる時にもキャリア指定で出す広告とかセグメント切った広告とかだと絶対viewの中にif文入るし。

むしろ俺の使ってるフレームワークがmodelをクラス化していないからそのまま書けるわけだが

別にSmartyとか使おうと思えばフレームワークプラグインディレクトリにぶち込んで設定変えるだけで使えるんですけどね