asp.net には、grideview、メニュー、..... などのコントロールがあります。
phpでウェブコントロールをエディタ風に開発する方法【html、jscript、サーバーへのajax呼び出し】 繰り返し使われるもので、分離できればコントロールの改善は良くなるのでは?
asp.net には、grideview、メニュー、..... などのコントロールがあります。
phpでウェブコントロールをエディタ風に開発する方法【html、jscript、サーバーへのajax呼び出し】 繰り返し使われるもので、分離できればコントロールの改善は良くなるのでは?
まず、PHP の「コントロール」とさらに悪いことに、「コントローラー」の意味はまったく異なることに注意してください。
私はASPを使用したことはありませんが、Delphiを広範囲に使用しました.Delphi for PHPは、あなたが求めているのと同じことを行います(はい、PHPで)。
Johann が言ったように、MVC を使いたいと思うかもしれませんが、実際にそうする必要はありません。
そのようなシステムの例 (MVC なし):
class TControl {
public $width=0;
public $height=0;
public $name='ControlN';
public function render(){
echo '<div style="width:'.(int)$this->width.'px; height:'.(int)$this->height.'px;"/>';
}
}
class TLabel {
public $caption='Label';
public function render(){
echo '<div style="width:'.(int)$this->width.'px; height:'.(int)$this->height.'px;">'.htmlspecialchars($this->caption,ENT_QUOTES).'</div>';
}
}
$label=new TLabel();
$label->width=200;
$label->height=24;
$label->caption='My label!';
$label->render();
ASP.net は Windows フォームを模倣しようとします。これにより、Windows フォームのユーザーは Web サイトをすばやく立ち上げて実行することができます。また、Windows フォームを模倣するため、Web ページに挿入できるプリロードされたユーザー コントロールをいくつか作成しました。これらはすべて、構成されたオプションを使用してクライアント ブラウザーにコントロールを表示するために必要なスタイル、JavaScript、および HTML を生成するだけです。含める .php を使用して、 PHP で同様の効果を生み出すことを試みることができます。たとえば、button.php を作成し、ボタンを表示する場所に含めます。
しかし、簡単にするために、PHP とフレームワークを使用した開発に対するMVCアプローチの方がはるかにクリーンであることがわかりました。
PHP では、すべての「コントローラー」をプレーンな HTML で記述します。
より頻繁に使用する「コントローラー」が必要な場合は、それらの関数を作成します。
function list($array)
{
$output = '';
foreach($array as $item) $output .= "<li>$item</li>";
return "<ul>$output</ul>";
}
これで「リスト コントローラ」ができました。