1

asp.net には、grideview、メニュー、..... などのコントロールがあります。

phpでウェブコントロールをエディタ風に開発する方法【html、jscript、サーバーへのajax呼び出し】 繰り返し使われるもので、分離できればコントロールの改善は良くなるのでは?

4

3 に答える 3

3

まず、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();
于 2011-03-29T07:33:33.467 に答える
1

ASP.net は Windows フォームを模倣しようとします。これにより、Windows フォームのユーザーは Web サイトをすばやく立ち上げて実行することができます。また、Windows フォームを模倣するため、Web ページに挿入できるプリロードされたユーザー コントロールをいくつか作成しました。これらはすべて、構成されたオプションを使用してクライアント ブラウザーにコントロールを表示するために必要なスタイル、JavaScript、および HTML を生成するだけです。含める .php を使用して、 PHP で同様の効果を生み出すことを試みることができます。たとえば、button.php を作成し、ボタンを表示する場所に含めます。

しかし、簡単にするために、PHP とフレームワークを使用した開発に対するMVCアプローチの方がはるかにクリーンであることがわかりました。

于 2011-03-29T07:23:40.593 に答える
1

PHP では、すべての「コントローラー」をプレーンな HTML で記述します。

より頻繁に使用する「コントローラー」が必要な場合は、それらの関数を作成します。

function list($array)
{
   $output = '';
   foreach($array as $item) $output .= "<li>$item</li>";
   return "<ul>$output</ul>";
}

これで「リスト コントローラ」ができました。

于 2011-03-29T07:09:22.707 に答える