検索
ホームページバックエンド開発PHPチュートリアルThinkPHP の Example_PHP チュートリアルを読んだ感想

ThinkPHP の Example_PHP チュートリアルを読んだ感想

数日前に ThinkPHP コードをダウンロードしましたが、CodeIgniter (CI) ほど良い印象はありませんでした。最新の RC バージョンをダウンロードしたためかもしれません。このサンプルは完全ではないので、データベース操作のコードの方が気になるので、いくつかの 404 プロンプトを開きました。さらに、ブログのサンプルを実行してみたところ、機能が非常に充実していることがわかりました。しかし、コードを見て 10 分以上費やした後、怖くなってきました。あまり好きではない理由は以下の通りです

1. フレームワークを使用した後でもコードが非常に大きくなり、このような小さなブログでも大量のコードを入力する必要があり、開発時間が短くなりません。

2. コントローラーに HTML、CSS、スクリプトを記述すると、コントローラーが肥大化し、コードが少しわかりにくくなります。 View に書き込んでみてはいかがでしょうか?

リーリー

3. Java、www.2cto.com Microsoft.Net、および PHP の 3 つのコーディング スタイルの混合使用 (正確には、関数、ファイル、または変数の命名スタイルを Java と Microsoft.Net から借用しましたが、PHP は使用しません) 。ただし、使用中は比較的安定しており、問題が発生する可能性はそれほど大きくありませんが、私はあまり慣れていません。

4. コントローラー コードにビジネス ロジックとデータベース操作を記述します。モデル内のコードは基本的に非常に短いことがわかり、基本的にブログのすべての機能がコントローラー内に記述されているようです。これはファット コントローラーの記述方法に似ていますが、(MVC についての私の理解によると) データベース操作をモデルに記述する方が良いはずです。ファット モデルにはファット コントローラーに比べて多くの利点があり、コードの再利用が容易になります。

5. コードを見ていたら、コメントを見つけました。

リーリー

私はデータベース操作のほうに興味があるので、以前に ThinkPHP のドキュメントをいくつか読んだことがあります。このコードを書いた友人の皆さん、TP reads で選択したものはレコードセットであり、find で取得したものはもちろん、このように割り当てた場合はレコードを読み取ることはできません。これを読み出すには、$result を $result[0] に変更する必要があります。このように、TP Example の作成者はユーザーに対して無責任すぎると感じます。しかし、それは大きな問題ではなく、単なる RC バージョンです。

6. SQL リクエストに文字列が混在しており、理解できないものもありました。 ! !さらに深く掘り下げるには時間がかかるかもしれません。このタイプの SQL を過度に使用すると、セキュリティ リスク (SQL インジェクションなど) が発生する可能性があります。

リーリー

7. コーディングスタイルはプログラマのレベルを反映する可能性がありますが、CI の例と比較すると、まだ一定のギャップがあります。コメントはもっとカジュアルに書かれています。私は時々コードを書くのですが、コメントはかなりランダムです。場合によっては、他の人を尊重するために、コードを書くのと同じ忍耐力でコメントを書く必要があります。

8. コードとは関係ありません。私のラップトップでは、付属のユーザー ドキュメントはあまり使いやすくありません。単純な PHP コードでは 2 ページしか表示されず、フォントが非常に大きいことがわかりました。一部のコードでは構文の強調表示に画像が使用されていますが、一眼レフを使いすぎているのかもしれません。画像の品質が低すぎます。実際、HTML を作成すると、ユーザーが使用したり検索したりするのに便利ですが、PDF を作成するのは少し面倒です。

上記の意見は、ThinkPHP 3.0 RC1 の例のみを対象としています。コアコードを見ていないのでコメントできません。一方で、国産 MVC フレームワークの強さを否定するつもりはありませんが、TP の開発者はもう少し細かい部分を工夫して、TP のマニュアルやサンプルの品質向上にもっと力を入れるべきだと思います!

Xiaoxiaより抜粋

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/478404.html技術記事数日前に ThinkPHP コードをダウンロードしましたが、CodeIgniter (CI) ほど良い印象はありませんでした。最新の RC バージョンをダウンロードしたためかもしれません。内部の例は完全ではありません。いくつか開いてください...
声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PHPセッションを失敗させる可能性のあるいくつかの一般的な問題は何ですか?PHPセッションを失敗させる可能性のあるいくつかの一般的な問題は何ですか?Apr 25, 2025 am 12:16 AM

PHPSESSIONの障害の理由には、構成エラー、Cookieの問題、セッションの有効期限が含まれます。 1。構成エラー:正しいセッションをチェックして設定します。save_path。 2.Cookieの問題:Cookieが正しく設定されていることを確認してください。 3.セッションの有効期限:セッションを調整してください。GC_MAXLIFETIME値はセッション時間を延長します。

PHPでセッション関連の問題をどのようにデバッグしますか?PHPでセッション関連の問題をどのようにデバッグしますか?Apr 25, 2025 am 12:12 AM

PHPでセッションの問題をデバッグする方法は次のとおりです。1。セッションが正しく開始されるかどうかを確認します。 2.セッションIDの配信を確認します。 3.セッションデータのストレージと読み取りを確認します。 4.サーバーの構成を確認します。セッションIDとデータを出力し、セッションファイルのコンテンツを表示するなど、セッション関連の問題を効果的に診断して解決できます。

session_start()が複数回呼び出されるとどうなりますか?session_start()が複数回呼び出されるとどうなりますか?Apr 25, 2025 am 12:06 AM

session_start()への複数の呼び出しにより、警告メッセージと可能なデータ上書きが行われます。 1)PHPは警告を発し、セッションが開始されたことを促します。 2)セッションデータの予期しない上書きを引き起こす可能性があります。 3)session_status()を使用してセッションステータスを確認して、繰り返しの呼び出しを避けます。

PHPでセッションのライフタイムをどのように構成しますか?PHPでセッションのライフタイムをどのように構成しますか?Apr 25, 2025 am 12:05 AM

PHPでのセッションライフサイクルの構成は、session.gc_maxlifetimeとsession.cookie_lifetimeを設定することで達成できます。 1)session.gc_maxlifetimeサーバー側のセッションデータのサバイバル時間を制御します。 0に設定すると、ブラウザが閉じているとCookieが期限切れになります。

セッションを保存するためにデータベースを使用することの利点は何ですか?セッションを保存するためにデータベースを使用することの利点は何ですか?Apr 24, 2025 am 12:16 AM

データベースストレージセッションを使用することの主な利点には、持続性、スケーラビリティ、セキュリティが含まれます。 1。永続性:サーバーが再起動しても、セッションデータは変更されないままになります。 2。スケーラビリティ:分散システムに適用され、セッションデータが複数のサーバー間で同期されるようにします。 3。セキュリティ:データベースは、機密情報を保護するための暗号化されたストレージを提供します。

PHPでカスタムセッション処理をどのように実装しますか?PHPでカスタムセッション処理をどのように実装しますか?Apr 24, 2025 am 12:16 AM

PHPでのカスタムセッション処理の実装は、SessionHandlerInterfaceインターフェイスを実装することで実行できます。具体的な手順には、次のものが含まれます。1)CussentsessionHandlerなどのSessionHandlerInterfaceを実装するクラスの作成。 2)セッションデータのライフサイクルとストレージ方法を定義するためのインターフェイス(オープン、クローズ、読み取り、書き込み、破壊、GCなど)の書き換え方法。 3)PHPスクリプトでカスタムセッションプロセッサを登録し、セッションを開始します。これにより、データをMySQLやRedisなどのメディアに保存して、パフォーマンス、セキュリティ、スケーラビリティを改善できます。

セッションIDとは何ですか?セッションIDとは何ですか?Apr 24, 2025 am 12:13 AM

SessionIDは、ユーザーセッションのステータスを追跡するためにWebアプリケーションで使用されるメカニズムです。 1.ユーザーとサーバー間の複数のインタラクション中にユーザーのID情報を維持するために使用されるランダムに生成された文字列です。 2。サーバーは、ユーザーの複数のリクエストでこれらの要求を識別および関連付けるのに役立つCookieまたはURLパラメーターを介してクライアントに生成および送信します。 3.生成は通常、ランダムアルゴリズムを使用して、一意性と予測不可能性を確保します。 4.実際の開発では、Redisなどのメモリ内データベースを使用してセッションデータを保存してパフォーマンスとセキュリティを改善できます。

ステートレス環境(APIなど)でセッションをどのように処理しますか?ステートレス環境(APIなど)でセッションをどのように処理しますか?Apr 24, 2025 am 12:12 AM

APIなどのステートレス環境でのセッションの管理は、JWTまたはCookieを使用して達成できます。 1。JWTは、無国籍とスケーラビリティに適していますが、ビッグデータに関してはサイズが大きいです。 2.cookiesはより伝統的で実装が簡単ですが、セキュリティを確保するために慎重に構成する必要があります。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

MantisBT

MantisBT

Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール