ホームページ >バックエンド開発 >PHPチュートリアル >PHP はあなたが思っているよりもはるかに優れています_PHP チュートリアル
PHP については、多くの賢明な人々からも多くの苦情が寄せられています。 Jeff Atwood が PHP について別の苦情を書いた後、私は PHP の良い点について考えました。
これらの苦情の最大の問題は、古いバージョンの PHP をまだ使用している多くの人々からの苦情であることです。彼らは、PHP が言語レベルとコミュニティ レベルの両方で急速に進化していることを気にしたくない、または認めたくないのかもしれません。実際、他のどの言語や Web プラットフォームよりも速く進化しています。いつもそうだったわけではありませんが、PHP は過去 5 年間にわたって素晴らしい歩みを続けてきました。
PHP コミュニティの最近の驚くべき成果について話す前に、いくつかの興味深い数字を見てみましょう: PHP は、サーバーサイド プログラミング言語が知られている Web サイトの 77.9% で使用されています。 Wordpress は世界中の Web サイトの 16.6% で使用されています。最も一般的に使用されている 3 つの CMS ウェブサイト構築システムは、1 つ目は Wordpress (シェア 54.3%)、2 つ目は Joomla (シェア 9.2%)、3 つ目は Drupal (シェア 6.8%) です。 3 つの製品はすべて PHP で書かれています。
PHPはちゃんとやっているはずですよね?
さて、PHP のユニークなスキルは、何年にもわたって変化してきたにもかかわらず、依然として技術者以外の人にとって最も簡単に学習できる言語であるということです。これにより、人々は他のテクノロジーよりも速く動的な Web サイトを構築できるようになります。ウェブサイトを手間のかからないものにします。 PHP は世界で最も優れた設計言語ではないかもしれませんが、物事を成し遂げることができることに疑いの余地はありません。
PHP言語
PHP 5.0 (2004 年リリース) は、非常に実用的なオブジェクト モデルをもたらしました...待て、8 年前にリリースされたもののことを話しています。 PHP の最新バージョンである PHP 5.4 は、あなたが夢見てきたものを現代の Web 言語で実現します。はい、PHP はネームスペースをサポートします。はい、PHP はクロージャをサポートします。はい、PHP はトレイトをサポートしています。
時間はかかりますが、PHP 5.4 では、全体的なエクスペリエンスを以前よりも向上させるための構文が追加されています。はい、PHP は配列の定義に [ ] の使用をサポートしています。はい、PHP は次のような関数を呼び出す新しく作成されたオブジェクトをサポートしています: (new Foo () )->bar (); はい、PHP は $foo->bar ()[1] のような要素を取得するための配列をサポートしています。
PHP は自らの間違いからも学びました: register_globals と magic_quotes は完全に削除されました。
PHPにはローカルテストを容易にするWebサーバーが組み込まれており、マイクロ秒で起動できます。
次の課題: インターネット上で PHP のチュートリアルを更新するにはどうすればよいでしょうか? PHP プログラムで WebSocket をサポートする最適なテクノロジは何ですか?
PHPエコシステム
良い言語を持つことは良いことですが、良いエコシステムを持つことはさらに良いことです。 PHP エコシステムはここ数年で大きく進化しました。
Git
Git についてはあまり話したくありません。Git はどこでも使用されており、PHP はすぐに Git を受け入れました。 PHP 自体も含め、ほぼすべての PHP ライブラリ、フレームワーク、製品は Git を使用しています。
作曲家
2年前、プラグインをサポートするためにsymfony 1でハッキングした醜いPEARコードを削除したいと思いました。 PEAR のようなモノリシック インストールではなく、プロジェクトの依存関係を管理できるものに置き換えたかったので、ソフトウェアの依存関係を管理するための最適なアルゴリズムを見つけようとしました。 Perl から Ruby、Debian から Redhat まで、可能な限りすべてのことを試しました。どの結果も私を満足させませんでした。たまたま私自身の解決策がうまくいっただけです...もちろん、これは単なる私の経験です。そこでZYppに出会って、それで終わりでした。 ZYpp は、ブール充足可能性問題解決を使用して依存関係を管理します。 Nils Adermann と Jordi Boggiano の熱心な努力のおかげで、PHP には依存関係を管理する優れたツール Composer が組み込まれました。
はい、PHPには他の言語よりも優れた依存関係管理ツールがあります。
Git、Composer、PHP の組み込み Web サーバーのおかげで、PHP プロジェクトのダウンロード/テスト/インストールが簡単になりました。
Symfony (PHP5.4 を使用) をテストしたいですか?
リーリー リーリー リーリーSilex をテストしてみませんか?
リーリー リーリー リーリーComposerをまだ知りませんか?それについては知っておくべきです。
メインの Composer リポジトリ Packagist を参照すると、すでに 1900 を超えるパッケージがあり、それらは 3 か月以内に何百万回もインストールされています。
次の課題: Composer を次の PHP バージョンに組み込みますか?
ご協力
コミュニティの協力がこの記事の焦点であり、私が最も誇りに思っていることでもあります。 PHP プロジェクトでは、他のプロジェクトを無視できるほど大きなプロジェクトであっても、コラボレーションが改善され始めています。
phpBB、Drupal、ez Publish、Symfony、および他の多くのプロジェクト (phpDocumentor、PHPUnit、Behat、Zikula、Propel、Doctrine、Midgard など) はすべてコードを共有しています。確かに、彼らはお互いに競争相手ですが、お互いに協力することが重要であることを理解しています。 Composer は、このコラボレーションを非常にうまく促進します。
次の課題は、より多くのプロジェクトにこのトレンドに参加するよう説得することです。
結論
繰り返しになりますが、PHP は最高のプログラミング言語ではないかもしれませんし、その癖については私が最初に指摘しますが、PHP は断然最高の Web プラットフォームです。