ホームページ >バックエンド開発 >PHPチュートリアル >PHP初心者の疑問を解決
PHP 初心者は疑問を持っています
私は以前に .net と java を学習しました
今、PHP を調べてみましたが、PHP は前の 2 つに比べてパッケージ化が不十分で、ASP のように感じられることがわかりました
見てみると PHP の説明には、PHP にはオブジェクト指向のデザインパターン、MVC、その他のフレームワークもあると書かれています。
最近の PHP で理解できない質問をいくつか挙げます。専門家が私の質問に答えてくれることを願っています。ありがとうございます
1. PHP の List
モデル(UserInfo) を定義しました。
データベース内のすべての Userinfo 結果セットをクエリするとき、それらを取得して二度と表示しないようにするにはどうすればよいですか?
2. PHP で WEB コードと PHP コードを分離するにはどうすればよいですか?
たとえば、Java のサーブレットは JSP ページに似ていますか?
-----解法---------
1,
$m = M('UserInfo');
$list = $m->select();
/*
$this->assign(...$list);
$this - >display;
*/
print_r($list);
2. テンプレートの置換は、1 の代入です。実際には、$list 変数が事前に作成されたテンプレート ファイルに置き換えられます。の対応する場所にある場合、このテンプレートは通常、Tpl ディレクトリ内の現在のコントローラと同じ名前になります。
MVC... Java のような MVC を使用する必要があります。PHP では、MVC はプログラミング設計の概念として書かれていることが多いと個人的に感じています。愛好家によると、それは単に階層化するだけではないでしょうか? 誰でもできるのに、なぜわざわざ特定のフレームワークのルールに従う必要があるのでしょうか? フレームワークは十分にシンプルで、十分に機敏である必要があり、それを使用するのは簡単です。 . シンプルすぎるとも言えます。
------解決策---------
1: 配列があります
2:例 変換後にクラスメソッドを呼び出すだけです。
3: スマート/カスタム テンプレート
------解決策------------------
その答えはとても洞察力に富んでいます
#1: $result = mysql_query("従業員から ID、名前、給与を選択",$conn); while (list($id, $name, $salary) = mysql_fetch_row($result)) { 「<tr>n」をエコーします。 " <td><a href="info.php?id=$id">$name</a></td>n"。 「<td>$salary</td>n」。 "</tr>n"; } #ただし、コードを読みやすくするために、サイクルの結果セットは通常配列に入れられ、ページ上で呼び出されます。これには 2 番目の質問が含まれます。 #php コード: $result = mysql_query("従業員から ID、名前、給与を選択",$conn); $arr = 配列(); while ($rows = mysql_fetch_array($result,MYSQL_ASSOC)) { array_push($arr,$rows); } #htmlコード: <?php if(!empty($arr)){ foreach($arr as $array){ ?> <テーブル> <tr> <td>ID</td><td><?=$array['id']?></td><!--これは php の短いタグです--> </tr> <tr> <td>名前</td><td><?=$array['name']?></td> </tr> </テーブル> <?php }//終了 } ?> <br><font color="#e78608">------解決策---------</font><br>上記の学生がさまざまな角度から回答しました <br>もう少し言っておきますが、<br><br>0。PHP は実際には .net/java ほどパッケージ化されていません。PHP はプロセスから OO まで段階的に開発されるため、オープンな言語でもあります。ソース言語が開発されると、作成者によってスタイルも異なります。同時に、<br><br>1 のような ASP を完全に放棄することは不可能です。 PHP には配列があり、リストとして使用でき、spl は他のコンテナも提供します。<br>ただし、php は動的型であるため、ジェネリックの概念はありません。<br>2.上記の回答で<br><br><br><br><br><fieldset>ディスカッション<legend></legend>私は以前に .net と Java を学習しました <br><br>今、PHP を調べて見つけましたPHP は前の 2 つに似ています カプセル化が非常に貧弱で、ASP のように感じます <br><br> PHP の説明を見たところ、PHP にはオブジェクト指向のデザイン パターン、MVC、その他のフレームワークもあると書かれていました。 <br><br>最近の PHP で理解できない質問をいくつか挙げます。専門家が私の質問に答えてくれることを願っています。ありがとうございます <br><br>1. PHP の List<T> の汎用配列に似たものはありますか? <br><br>モデル(UserInfo) を定義しました <br>データベースにクエリを実行すると... <br><br> </fieldset> <div class="clear"></div> </tr>