検索
ホームページバックエンド開発PHPチュートリアルPea Framework 0.6 が正式にリリースされたソリューションのアイデア

Wandou Framework 0.6 が正式リリースされました
[color=#339966] Wandou Framework (英語名は Wonderful Framework): [/color] は、PHP5 以降をサポートする PHP 開発フレームワークです。無料です。
はオープンソースであり、BSD プロトコルに基づいてリリースされており、柔軟で拡張可能、構成可能なコンポーネント化されたフレームワーク構造を持ち、従来のプロセス指向をサポートしながら、HTML に埋め込まれた開発手法を採用しています。
MVC モードをサポートし、プログラマーがアーティストとより協力できるようにします。
PhpTagLib、Action などの知識が必要なく、これらのテクノロジーにより開発者は強力に開発できます。階層化された設計アーキテクチャ。
統合された単体テスト/オブジェクト模倣機能と依存関係注入アーキテクチャにより、アジャイル開発がより適切にサポートされます。
このフレームワークは、JAVA の多くのテクノロジを参照しており、これらのテクノロジはさらに発展しています。フレームワークにはまだ多くの欠点があり、継続的に改善する必要があります。ご質問があれば、フィードバックをお寄せください。


機能:*柔軟性、拡張性、再利用性が高く、完全なオブジェクト指向設計で、いくつかの便利なクラス ライブラリを備えています。
* 依存関係の注入、開発用の IoC アーキテクチャを実現します。
* クラスの依存関係をより適切に削減できます。これはフレームワークの基礎です。開発者は独自の一致するアドレスを定義し、それらを操作用の特殊なクラスにマッピングできます。
* タグ エンジン、PhpTagLib は、開発者が HTML/XML などのタグを定義できるようにする重要な MVC 実装です。コンポーネントの開発を実現します。
* 強力なデータ処理フレームワークであるアクション モジュールは、タグを使用した呼び出しをサポートし、複数のアクションの組み合わせをサポートします。
* イテレーターは、PHP のイテレーター インターフェイスを拡張および強化し、他のモジュールに統合します。
* データベース、PEAR DB を再パッケージ化し、複数のデータベースへの同時接続をサポートし、タグを提供します。
* ページング クラス、データ ページング、およびページング ガイドが分離されており、ページングをより適切に拡張できます。イテレータ、任意のデータのイテレータ ページングを実行できます。
* キャッシュ、統合キャッシュ アーキテクチャ、開発を提供します。簡単に拡張でき、キャッシュ タグを介したページのコンテンツのキャッシュをサポートします。
* テスト エンジン、サポートアジャイル開発に必要な TDD 開発手法は、個別のテスト ケースの実行をサポートし、テスト グループの実行もサポートします。
* オブジェクトの模倣。指定したクラス/インターフェイスをモックするだけでなく、親クラスをモックして分離することもできます。
* PlainObject、通常のクラスの作成をサポートし、クラスを継承せず、インターフェイスも実装せず、直接使用できます。タグ クラスまたはアクション クラスとして使用されます。
* 従来のページ、従来の PHP ページ、HTML ページ、画像、スクリプト、その他のファイルに直接アクセスできます。
* 単一の入り口、入り口プログラムでフレームワーク環境を設定できます。
* デバッグ、より詳細なエラー/例外の提供をサポート、
* XML 形式の構成ファイルにより、構成がより直観的かつ柔軟になります。
* PEAR Basic および一般的に使用されるクラス ライブラリの一部が付属しています。
* 無料のオープン ソース。 BSD オープン ソース ライセンスを使用してリリースされているため、どのプロジェクトでも使用できます。

フレームワーク Web サイト: http://www.wonderfulproject.cn
Google コード: http://code.google.com/ p/wonderfulframework

例: http://www.wonderfulproject.cn/door.php/example.php

関連記事:
PhpTagLib の MVC 階層化設計
イテレーターの紹介およびページング (Page) クラス ライブラリ
フレームワーク内のアクションの機能: コンポーネントと組み合わせ
フレームワーク内での FCKEditor の使用

旧正月中には、新しいバージョンをリリースする時間があります
このフレームワークは主にシステム開発に位置付けられ、いくつかのアジャイル技術を提供します。
フレームワークが実際のプロジェクトに継続的に適用され実践されるにつれて、全体的なアーキテクチャが安定し、いくつかの点で改善が加えられています。
今後も、フレームワークはアーキテクチャの改善を続け、さまざまなライブラリ (クラス ライブラリ、タグ ライブラリ、アクション ライブラリ、バリデータ ライブラリ) を強化し、使いやすさを向上させ、効率を向上させます。 etc.


-----解決策--------- ドキュメントはどこにありますか?ドキュメントはどこにありますか?

------解決策---------デモを簡単に見てみましょう

あなたのフレームワークは PHP に適していません

1。このフレームワークは、PHP でのインクルード ファイルの参照が非常に面倒であることを知っておく必要があります。
2. MVC は M と V を認識しません。「PhpTagLib」を V としてカウントするのは少し抵抗があります。
3. アクション パラメーターは非常に複雑です - 「WDF_ActionForm & $form、WDF_ActionErrors & $errors」。コードを自動的に生成する IDE やツールがない場合は、パラメーターは単純であるほど良いことを知ってください。
4. 出力に $this->response->writeln を使用します。これは複雑すぎます。 $this->gt;出力はあまり良くありません
5. XML 形式の設定ファイルは PHP Array を使用して直接実装でき、PHP 自体は動的スクリプトなので可読性は悪くありません。特徴。
6. アクションパラメータを取得するには、$form->getValue を使用する必要があります。少し複雑ですか?
public function process(string $username) { ... } これが最高です

このフレームワークは本当に満足のいくものです。Java/C# とは異なり、PHP は非効率な動的スクリプト言語であることを知っておく必要があります。このようなフレームワークは PHP には適していません

------解決策----------------------
まず、ソースコードをまだ見ていないのですが、いくつか提案がありますので、ご不便をおかけして申し訳ございません。

> 1. フレームワークは自動ロードさえ実装していません。PHP でのインクルード ファイルの参照は非常に面倒であることを知っておく必要があります。
> 長い間これを追加する方法を考えていましたが、autoload はどのファイルをロードするかをどのように認識するのでしょうか?ネーミングスペースを使用することもできますが、PHP5.3 はネームスペースのみをサポートしていますが、この場合、エイリアスを使用しない限り、名前は依然として非常に長いです。エイリアスはインクルードよりもどれほど便利ですか?

一般に、 autoload はクラス名を通じて実装され、同じ名前のクラスが存在する場合は、using(...); と同様の関数を使用できます。 autoload にどのディレクトリを最初にロードするかを指示するグローバル マーク。
オートロードの実装は主に lib のディレクトリ構成に依存します。うまく整理できれば、オートロードの実装が大幅に容易になります。

-----------------


> 3. アクション パラメーターは非常に複雑です - "WDF_ActionForm & $form、WDF_ActionErrors & $errors" については、コードを自動的に生成する IDE またはツールがない場合、パラメーターは単純であるほど良いことを知っておく必要があります。
> そうですね、パラメータはシンプルであるほど良いという意見には同意しますが、これはすでにメイン データを分類しているため、$ Form を入れないのはなぜでしょうか。コントローラーのメンバーですが、パラメーターとして渡す必要がありますか?
PHP の組み込み例外処理を使用してみてはいかがでしょうか? class ActionException extends Exception { ... }
throw new ActionException(...);

-------------


> ; 6. アクションパラメータを取得するには、$form->getValue を使用する必要があります。少し複雑ですか?
> public function process(string $username) { ... } これは最高ではありませんが、1 つのユーザー名と 1 つのパラメータではどうなりますか? はい、追加します。


私が言いたいのはこれです:
public function process(string $username) { ... }
$username は必須パラメータであり、がありません その後、コントローラはエラーを報告します

public function process(string $username = null) { ... }
$username がオプションのパラメータであることを示します

渡された残りのパラメータページ上の $ フォームを通過して


にアクセスすることもできます。

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PHP:サーバー側のスクリプト言語の紹介PHP:サーバー側のスクリプト言語の紹介Apr 16, 2025 am 12:18 AM

PHPは、動的なWeb開発およびサーバー側のアプリケーションに使用されるサーバー側のスクリプト言語です。 1.PHPは、編集を必要とせず、迅速な発展に適した解釈言語です。 2。PHPコードはHTMLに組み込まれているため、Webページの開発が簡単になりました。 3。PHPプロセスサーバー側のロジック、HTML出力を生成し、ユーザーの相互作用とデータ処理をサポートします。 4。PHPは、データベースと対話し、プロセスフォームの送信、サーバー側のタスクを実行できます。

PHPとWeb:その長期的な影響を調査しますPHPとWeb:その長期的な影響を調査しますApr 16, 2025 am 12:17 AM

PHPは過去数十年にわたってネットワークを形成しており、Web開発において重要な役割を果たし続けます。 1)PHPは1994年に発信され、MySQLとのシームレスな統合により、開発者にとって最初の選択肢となっています。 2)コア関数には、動的なコンテンツの生成とデータベースとの統合が含まれ、ウェブサイトをリアルタイムで更新し、パーソナライズされた方法で表示できるようにします。 3)PHPの幅広いアプリケーションとエコシステムは、長期的な影響を促進していますが、バージョンの更新とセキュリティの課題にも直面しています。 4)PHP7のリリースなど、近年のパフォーマンスの改善により、現代の言語と競合できるようになりました。 5)将来的には、PHPはコンテナ化やマイクロサービスなどの新しい課題に対処する必要がありますが、その柔軟性とアクティブなコミュニティにより適応性があります。

なぜPHPを使用するのですか?利点と利点が説明されましたなぜPHPを使用するのですか?利点と利点が説明されましたApr 16, 2025 am 12:16 AM

PHPの中心的な利点には、学習の容易さ、強力なWeb開発サポート、豊富なライブラリとフレームワーク、高性能とスケーラビリティ、クロスプラットフォームの互換性、費用対効果が含まれます。 1)初心者に適した学習と使用が簡単。 2)Webサーバーとの適切な統合および複数のデータベースをサポートします。 3)Laravelなどの強力なフレームワークを持っています。 4)最適化を通じて高性能を達成できます。 5)複数のオペレーティングシステムをサポートします。 6)開発コストを削減するためのオープンソース。

神話を暴く:PHPは本当に死んだ言語ですか?神話を暴く:PHPは本当に死んだ言語ですか?Apr 16, 2025 am 12:15 AM

PHPは死んでいません。 1)PHPコミュニティは、パフォーマンスとセキュリティの問題を積極的に解決し、PHP7.xはパフォーマンスを向上させます。 2)PHPは最新のWeb開発に適しており、大規模なWebサイトで広く使用されています。 3)PHPは学習しやすく、サーバーはうまく機能しますが、タイプシステムは静的言語ほど厳格ではありません。 4)PHPは、コンテンツ管理とeコマースの分野で依然として重要であり、エコシステムは進化し続けています。 5)OpcacheとAPCを介してパフォーマンスを最適化し、OOPと設計パターンを使用してコードの品質を向上させます。

PHP対Pythonの議論:どちらが良いですか?PHP対Pythonの議論:どちらが良いですか?Apr 16, 2025 am 12:03 AM

PHPとPythonには独自の利点と短所があり、選択はプロジェクトの要件に依存します。 1)PHPは、Web開発に適しており、学習しやすく、豊富なコミュニティリソースですが、構文は十分に近代的ではなく、パフォーマンスとセキュリティに注意を払う必要があります。 2)Pythonは、簡潔な構文と学習が簡単なデータサイエンスと機械学習に適していますが、実行速度とメモリ管理にはボトルネックがあります。

PHPの目的:動的なWebサイトの構築PHPの目的:動的なWebサイトの構築Apr 15, 2025 am 12:18 AM

PHPは動的なWebサイトを構築するために使用され、そのコア関数には次のものが含まれます。1。データベースに接続することにより、動的コンテンツを生成し、リアルタイムでWebページを生成します。 2。ユーザーのインタラクションを処理し、提出をフォームし、入力を確認し、操作に応答します。 3.セッションとユーザー認証を管理して、パーソナライズされたエクスペリエンスを提供します。 4.パフォーマンスを最適化し、ベストプラクティスに従って、ウェブサイトの効率とセキュリティを改善します。

PHP:データベースとサーバー側のロジックの処理PHP:データベースとサーバー側のロジックの処理Apr 15, 2025 am 12:15 AM

PHPはMySQLIおよびPDO拡張機能を使用して、データベース操作とサーバー側のロジック処理で対話し、セッション管理などの関数を介してサーバー側のロジックを処理します。 1)MySQLIまたはPDOを使用してデータベースに接続し、SQLクエリを実行します。 2)セッション管理およびその他の機能を通じて、HTTPリクエストとユーザーステータスを処理します。 3)トランザクションを使用して、データベース操作の原子性を確保します。 4)SQLインジェクションを防ぎ、例外処理とデバッグの閉鎖接続を使用します。 5)インデックスとキャッシュを通じてパフォーマンスを最適化し、読みやすいコードを書き、エラー処理を実行します。

PHPでのSQL注入をどのように防止しますか? (準備された声明、PDO)PHPでのSQL注入をどのように防止しますか? (準備された声明、PDO)Apr 15, 2025 am 12:15 AM

PHPで前処理ステートメントとPDOを使用すると、SQL注入攻撃を効果的に防ぐことができます。 1)PDOを使用してデータベースに接続し、エラーモードを設定します。 2)準備方法を使用して前処理ステートメントを作成し、プレースホルダーを使用してデータを渡し、メソッドを実行します。 3)結果のクエリを処理し、コードのセキュリティとパフォーマンスを確保します。

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衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

EditPlus 中国語クラック版

EditPlus 中国語クラック版

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

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

VSCode Windows 64 ビットのダウンロード

VSCode Windows 64 ビットのダウンロード

Microsoft によって発売された無料で強力な IDE エディター

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)