目次
Related posts:
ホームページ php教程 php手册 开源的 PHP 轻量级框架 iphp

开源的 PHP 轻量级框架 iphp

Jun 06, 2016 pm 08:13 PM
php web オープンソース フレーム 軽量

对于 PHP Web 开发来说, 框架很重要, 但其实框架又不重要. 说重要, 是因为确实需要一个框架来建立一套规范, 对文件组织, 类和方法的编写, 数据库操作等进行引导. 说不重要, 是因为对于 PHP 开发, 没有哪一个框架最必须的, 不是框架不给力, 而是 PHP 的世界从

对于 PHP Web 开发来说, 框架很重要, 但其实框架又不重要. 说重要, 是因为确实需要一个框架来建立一套规范, 对文件组织, 类和方法的编写, 数据库操作等进行引导. 说不重要, 是因为对于 PHP 开发, 没有哪一个框架最必须的, 不是框架不给力, 而是 PHP 的世界从来就没有呼唤这样的框架的出现.

在 PHP 框架既重要又不重要的事实面前, 所有的 PHP 框架必须是轻量级的, 如果一个 PHP 框架非常重, 那么它肯定没有前途, 不是流行不起来, 就是流行很短暂便沉寂.

我建议每一个团队都开发自己的 PHP 框架, 简单就好. 最好是那种 3 天就开发出来的框架, 而不是那种憋了一年半载才勉强做出来奇怪且复杂的框架. 这种框架必须是透明的, 即使是新手也能一眼看穿框架的核心. 如果做不到的话, 我建议还是换人(没错, 这种情况下人应该被换掉).

对于 PHP 框架, 我有一些要求:

1. 不能做太多事

PHP 框架不要总想做所有事, 缓存系统不需要框架来做, Session 管理也不需要, 存储层封装不要太过度以至搞出各种恶心的 ORM, ActiveRecord 之类的无用功能. 这些功能和模块, 应该独立于框架, 采用成熟的技术.

2. 不要"创造"所谓的模板语言

PHP 语言本身就是模板语言, PHP 做模板语言对于 PHP Web 来说是最完美的, 可维护性和培训成本最佳的语言, 只需要再多说一两句话规范即可: 仅使用 echo 及允许的帮助 echo 的函数, 和 if/for/while. 我十年前不认同 smarty 这类模板工具的意义, 十年后也不认可这类毫无意义的寄生于 PHP 的工具.

3. 使用 PHP 框架的最佳状态是忘掉框架

框架要足够简便, 功能恰到好处, 没有不必要的限制, 这样在使用的过程中才能让人忘掉框架的存在, 以便能将精力放在业务本身. 当需要开发一个功能时, 程序员想的不应该是"框架能不能做", 而是"我能不能做".

4. 最后

我自己也开发了一个轻量级的 PHP 框架, 命名为 iphp. iphp 非常简便和轻量, 全部有效代码不过一千行. iphp 只解决 Web 开发中最重要的问题: 代码组织, URL路由和URL生成.

这个框架用来开发了 SSDB 数据库的图形化界面管理工具 phpssdbadmin(开源项目). 如果你去看 phpssdbadmin 你就会发现, iphp 做到了前面的要求, phpssdbadmin 的用处几乎都没有注意到 PHP 框架的存在.

相关链接:

  • iphp 框架入门
  • iphp 框架如何生成 URL?
  1. SSDB 数据库的图形化界面管理工具 – phpssdbadmin
  2. iphp框架常用函数
  3. if-else对优化代码冗余度的反作用
  4. PHP浮点数显示和转成字符串
  5. WordPress分页代码
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホット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ヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

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

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

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

CakePHP プロジェクトの構成 CakePHP プロジェクトの構成 Sep 10, 2024 pm 05:25 PM

この章では、CakePHP の環境変数、一般設定、データベース設定、電子メール設定について理解します。

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP ルーティング CakePHP ルーティング Sep 10, 2024 pm 05:25 PM

この章では、ルーティングに関連する次のトピックを学習します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

See all articles