9
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

PHPの有名どころライブラリ群メモ

Last updated at Posted at 2020-02-28

PHPの有名どころライブラリ群メモ

PSR実装

PSR-3 Logger

  • monolog
    • 最古のPSR-3実装。とりあえずこれを使っておけば問題ない
    • Symfony2で採用された

PSR-7 Http Message

PSR-11 Container Interface

PSR-15 HTTP Handlers

PSR-17 HTTP Factories

PSR-7,15,17 + PSR-11(Container Interface) を使うアーキテクチャなら、FactoryInterfaceをDIすればPSR-7実装の影響範囲は設定箇所だけになる。
PSR-11を使わないアーキテクチャなら、PSR-7を自動判定(auto-discovery)してくれるライブラリを使うといい。

ルーティング

PSR-15(HTTP Handlers) 準拠でないもの

HTTP例外

例外だけ切り出したものは見つからなかった。
ちょっと巨大すぎるので、例外部分のみを参考にするくらいがいいかもしれない。

CLI

DBAL + SQLビルダ

SQLビルダ

DBALにクエリビルダも付いていることが多いので、古きこれらのライブラリを今から使う価値はあまり無さそう

  • Idiorm
  • FluentPDO
    • 開発終了?

ORM

日付時刻

  • carbon
    • ver1系(php5用)はMutableなことに注意
  • chronos
    • Immutableなのでphp-5.6なら採用してもいいかもしれない

ユーティリティ

デバッグ

環境設定

テンプレートエンジン

  • xiaoler/blade
    • Laravelで採用されている Blade を単体で使うためのもの
    • phperには慣れ親しんだ構文で書けるのが特徴
  • twig
    • テンプレートエンジンはphpとは切り離されるべきという哲学
  • smarty3
    • 最古
  • league/plates
    • 生php + α という感じ
  • phptal/phptal
    • HTMLの属性に埋め込むという変わったアプローチ

framework

  • Laravel6

    • 一番hot
  • Symfony5

    • php界にコンポネント指向を広めた偉大なframework、Symfony2の後継
    • 単体で使えるコンポネントもたくさんある
  • CakePHP4

    • 規約重視の哲学
    • CakePHP3あたりから徐々にコンポネント指向になってきた
  • phalcon

    • php拡張でできているので高速

microframework

9
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
9
7

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?