PHP 学習ガイド - 第 1 章

黄舟
リリース: 2023-03-04 06:52:02
オリジナル
1661 人が閲覧しました

第1章

PHPの基本入門

この章のポイント

◆PHPを理解する

◆PHPの歴史

◆PHPが人気の理由

◆PHPの競争上の利点

最初の章からPHP の基本的な概要を説明します。この章では、PHP とは何か、類似テクノロジーとの比較など、PHP に関する最も一般的な質問のいくつかについて説明することに重点を置いています。章のほとんどは、PHP が人気がある理由のリストに費やされます。

PHP について知る

PHP は、Web 開発者によって作成された Web 開発プログラミング言語です。
PHP は「PHP: ハイパーテキスト プリプロセッサ」の略です。実際、当初は「Personal Home Page Tools」と呼ばれていましたが、その使用が広まるにつれ、オンライン コミュニティの誰もが、より新しい、より適切な名前を推奨しました (GNU が「GNU」の略語であるのと同じです)。 @s は Unix ではありません」)。作成する PHP ファイルには任意のファイル拡張子を選択できますが、通常は PhpᄄAphp3 および .phtml を使用することをお勧めします。現在、PHP の 4 番目のバージョンが一般的に使用されています。拡張子は php4 ですが、もちろん php と短縮することもできます。

PHP はサーバーサイドに埋め込まれた HTML スクリプト言語で、HTML に埋め込むことも、別のバイナリ ファイルとして実行することもできます (前者がよく使用されますが)。同様の製品としては、Microsoft の ASP、Macromedia の ColdFusion、Sun の Java Server Pages (JSP) などがあり、機能や概念が Microsoft 製品とよく似ているため、PHP は「オープンソース ASP」(ASP のオープンソース版)と呼ばれることもあります。 PHP は ASP よりも前に存在していたので、この公式は誤解を招きましたが、ここ数年で、ASP の使用率が一部減ったにもかかわらず、PHP とサーバーサイド Java の人気がますます高まっています。しかし、そのような比較はもはや適切ではないと思われます。

次の章では、サーバーサイド スクリプト言語について詳しく説明します。今のところ、読者はサーバーサイド関数を Web に追加できるスーパー HTML マークアップとして考えることができます。たとえば、PHP を組み合わせて複雑な Web ページを生成したり、PHP プログラムを使用して顧客がオンライン ショッピングをするときに自動的に実行されるクレジット カード支払いプロセスをトリガーしたりできます。

厳密に言うと、PHP は Web レイアウトの構成、イベント、または外観のデザインに大きく関係しています。実際、PHP の機能のほとんどはエンド ユーザーには見えません。 PHP の最終結果は依然として HTML であるため、ユーザーは PHP Web ページを表示するときに、そのページが HTML 構文で記述されているかどうかを区別する必要はありません。

Apache HTTP サーバーは市場で有力な無料 Web サーバーであり、世界中の WWW の約 55% が Apache HTTP サーバーを実行しており、PHP はその公式モジュールの 1 つです。つまり、PHP スクリプト エンジンを Web サーバーに組み込むことができるため、データ処理速度が向上します。 Apache Server と同様に、PHP はクロスプラットフォーム機能を備えています。つまり、PHP は本来 UNIX 環境で実行されますが、Windows 上でも実行できます。 Apache Software Foundation (http://www.apache.org/) によってサポートされているすべてのソフトウェア開発プロジェクト (PHP を含む) はオープン ソース ソフトウェアです。

PHPの歴史

PHPはPHP/FIという古いプロジェクトを継承しています。 PHP/FI は、1995 年に Rasmus Lerdorf によって、彼のホームページを訪問した人々に関する情報を追跡するための単純な Perl スクリプトのセットとして作成されました。このスクリプト セットを「Personal Home Page Tools」と名付けました。より多くの機能の必要性が高まるにつれ、Rasmus はデータベースにアクセスし、ユーザーが単純な動的 Web プログラムを開発できるようにする、より大規模な C 言語実装を作成しました。 Rasmus は、誰でも使用できるように、PHP/FI のソース コードを公開し、バグを修正し、ソース コードを改善します。

PHP/FI は、個人のホームページ/フォームのインタープリターを提供するように設計されたプログラムで、今日の PHP の基本的な機能がすでにいくつか含まれています。 Perl スタイルの変数があり、フォーム変数を自動的に解釈し、HTML に埋め込むことができます。構文自体は Perl に非常に似ていますが、制限があり、シンプルで、少し不快です。

1997 年までに、C 言語実装の 2 番目のバージョンである PHP/FI 2.0 は、世界中で数千のユーザー (推定) と、インターネット上のすべてのドメイン名の約 1% に相当する約 50,000 のドメイン名がインストールされました。しかし当時、このプロジェクトに少量のコードを書いている人は数人しかおらず、まだ一人のプロジェクトにすぎませんでした。

PHP/FI 2.0 は、いくつかのベータ版を経て、1997 年 11 月に正式版をリリースしました。すぐに、PHP 3.0 の最初のアルファ バージョンがリリースされ、PHP は成功しました。

PHP 3

PHP 3.0 は、今日の PHP 構文構造に似た最初のバージョンでした。 Andi Gutmans と Zeev Suraski は、大学のプロジェクトで電子商取引プログラムを開発しているときに、PHP/FI 2.0 には明らかに機能が欠けていることに気づき、コードを書き直しました。これがPHP3.0です。 Andi、Rasmus、Zeev による一連の努力の結果、PHP/FI の既存のユーザー ベースを考慮して、PHP/FI 2.0 の正式な後継バージョンとして PHP 3.0 を共同でリリースすることを決定しました。 PHP/FI 2.0 のさらなる開発はほぼ中止されました。

PHP 3.0 の最も強力な機能の 1 つは拡張性です。データベース、プロトコル、API のインフラストラクチャをエンド ユーザーに提供するだけでなく、その拡張性により、多くの開発者が新しいモジュールに参加し、提出するようになります。これが PHP 3.0 の大成功の鍵であることが判明しました。 PHP 3.0 のその他の主要な機能には、オブジェクト指向のサポートや、より強力で調整された構文構造が含まれます。

このまったく新しい言語は、新しい名前でリリースされました。 PHP/FI 2.0 の名前から、暗黙の「この言語は個人使用のみに制限されています」という部分が削除されます。単純な略語「PHP」で名前が付けられます。これは再帰的な略語であり、正式名は PHP: Hypertext Preprocessor です。

1998 年後半、PHP には 10,000 近くのインストーラーがあり、約 100,000 の Web サイトが PHP を使用していると報告しました。ピーク時には、PHP 3.0 はインターネット上の Web サーバーの 10% にインストールされていました。

約 9 か月にわたる公開テストの後、PHP 3.0 は 1998 年 6 月に正式にリリースされました。

PHP 4

1998 年の冬、PHP 3.0 が正式にリリースされた直後、Andi Gutmans と Zeev Suraski は PHP コードの書き直しを開始しました。設計の目標は、複雑なプログラムのランタイムのパフォーマンスと PHP 自体のコードのモジュール性を強化することです。 PHP 3.0 の新機能と、幅広いサードパーティのデータベースおよび API のサポートにより、そのようなプログラムを作成できるようになりますが、PHP 3.0 には、そのような複雑なプログラムを効率的に処理する機能がありません。

「Zend Engine」(Zeev と Andi の略称) と呼ばれる新しいエンジンは設計目標を達成し、1999 年半ばに初めて PHP に導入されました。このエンジンをベースに、さらに新機能を盛り込んだ PHP 4.0 が、PHP 3.0 のリリースから 2 年後の 2000 年 5 月に正式版としてリリースされました。 PHP 4.0 には、より高いパフォーマンスに加えて、より多くの Web サーバーのサポート、より安全なユーザー入力の処理方法、いくつかの新しい言語構造などの重要な機能も含まれています。

PHP 4 は、現在利用可能な PHP の最新バージョンです。 PHP 5.0 に新機能を組み込むために、Zend Engine を修正および強化する作業が開始されました。

現在、10,000 人の開発者 (推定) と数百万の Web サイトが PHP をインストールしていると報告しており、これはインターネット全体のドメイン名の 20% を占めています。

PHP 開発チームには優秀な開発者が数多くおり、PEAR や PHP ドキュメント プロジェクトなどの PHP 関連プロジェクトの開発にも多数の優秀な人材が取り組んでいます。

PHP 5

PHP の将来は、主にそのコアである Zend Engine によって制御されます。 PHP 5 には新世代の Zend Engine 2.0 が含まれます。このエンジンの詳細については、Web サイトをご覧ください。
歴史

PHPが人気がある理由
PHPが人気がある理由はたくさんあります。主な理由をいくつか紹介します。

PHP は無料です
PHP 自体には一銭もかかりません。 Apache/PHP/MySQL を組み合わせて安価なローエンド ハードウェアで実行できるという事実は、IIS/ASP/SQL Server を採用することを決定するときに考慮する必要はありません。
比較のために、表 1-1 に、米国におけるいくつかの類似製品のおおよその小売価格を示します。すべての価格は単一の外部 Web サーバーに基づいており、最適なデータベースおよび開発ツールと比較されています。効果的で実際に一般的に使用されているオプションですが、現在使用されている場合、Microsoft は NET Server Suite を次世代 Web サーバーとしてリストしていませんが、価格は下がるのではなく上昇すると保守的に推測できます。

表 1-1 小売価格の比較 (USD)

オープンソース ソフトウェア: 安くて良い

明らかに、私たちは物質的な世界に住んでおり、「支払った金額に見合ったものを手に入れることができる」、「無料のランチなどというものはない」、「完璧なものは伝説の中にのみ存在する」などの格言によく遭遇します。したがって、誰もが必然的にフリーソフトウェアの品質と存続に疑問を抱くでしょう。最近まで、フリー ソフトウェア (正式にはシェアウェアまたはフリー ソフトウェアとして知られていました) は、一般的に次の 3 つのカテゴリのいずれかに分類されていました:

小規模で非商用ソフトウェア
一般的な低レベルのタスクを実行するソフトウェア この社会政治的な「問題」のユーザーによって作成されたソフトウェア」は今、これらの固定観念を根本的に変えるはずです。私たちがビジネス ソフトウェアの絶え間なく変化する世界にいることは疑いの余地がありません。現在では、電子メール クライアント、Web ブラウザ、ゲーム、さらにはフルサービスのオフィス スイートなど、多くの重要な消費者向けソフトウェアが無料で提供されており、その作成者が Web バージョンを作成したり、FTP サーバーをセットアップしたりするとすぐにリリースされます。すぐにそしてできるだけ早く。どの花が受粉のためにミツバチを引き寄せるのに十分な甘さがあるかのように、ユーザー ソフトウェアの意味は徐々に変わりつつあり、言い換えれば、より多くのサーバー ハードウェアとオペレーティング システムを販売し、統合を改善し、広告チャネルになるための手段として使用されています。 、運用ツールのコンポーネントの一部を売却するか、株式を売却します。したがって、ソフトウェアの小売価格は、ソフトウェアの品質やユーザー レベルを評価するための信頼できる基準ではなくなりました。
サーバー側では、オープンソース製品はより強力になり、最高の商用ソフトウェアと競合できるだけでなく、多くの面で商用ソフトウェアを超えたと人々が感じています。これが私たちだけの意見だと思わずに、IBM、すべてのハードウェアメーカー、NASA、FTE、シーメンス、キンコー、イギリス女王、メキシコの教育制度に聞いてみてください。これについてまだ疑問がある場合は、次の Web サイトから詳細を学ぶことができます:

http://www.opensource.org
http://www.fsf.org

PHP 認証
無料でオープンなソース コードフリー ソフトウェアは一連のライセンス構造によって保証されており、その中で最も有名なものは GPL (GNU General Public License) または (コピーレフト) です。 PHP は以前、GPL と独自のライセンスの両方に基づいて配布されており、各ユーザーがどちらかを自由に選択できました。しかし、これは変わりました。現在、プログラム全体は、独自の超自由放任の PHP4 ライセンスの下で公的に配布されています。Zend は、Q パブリック ライセンスの下で別個の製品です (Zend は、PHP からフォークされたときに価格設定され、公的に販売されました) 。

ライセンスに関する詳細な手順は、次の Web サイトで参照できます:


http://www.php.net/license.html
http://www.troll.no/qpl/annotaed.html

ほとんどの人PHP は無料ダウンロードとして入手できますが、Linux ディストリビューション、技術書、その他の製品の一部として購入することもできます。後者の場合、PHP は無料であるという主張に疑問を抱く人もいるかもしれません。これは 2 つの方法で見ることができますが、ほとんどのオープンソース ソフトウェアでは支払いを要求することはできませんが、ディスクに保存するなどの最も安価な方法であっても、ソフトウェアの配送料を支払う必要があります (郵送または他のツールを使用する)。他のユーザーに。さらに、一部の作業またはリスクは市場によって完了および負担されますが、これらのタスクは開発チームによって実行または負担されません。この場合、ユーザーも料金を支払う必要があります。たとえば、受け取ったソフトウェアのすべてのコピーがウイルスに感染していないこと、または一定の品質であることを確認したり、ウイルスが含まれた CD-ROM を使用する危険を回避したりするには、一定の料金を支払う必要があります。

一般的に言えば、オープンソース ソフトウェア ユーザーは、さまざまな状況に応じて、最適な利益と価格の比率、支払いなし、保証なしを自由に選択できます。あるいは、価格は高いが技術サポートが充実している、あるいはその中間のものなど。ただし、現在、PHP の販売にサービスと技術サポートを提供する組織はありません (ただし、これが Zend 組織のより価値のあるセールス ポイントの 1 つになるのではないかと推測する人もいます)。

Linux などの他のオープンソース製品では、RedHat のような企業がユーザーの質問に答えています。PHP については、この分野でのビジネス運営が始まったばかりです。

PHP は簡単に始められます
同じ機能の他の操作方法と比較して、PHP は非常に習得しやすいです。 Java Server Pages や C 言語ベースの CGI とは異なり、PHP では、小規模なデータベース アクセス呼び出しを行うからといって、ユーザーが最初にプログラミング言語全体を学習する必要はありません。 Perl は冗談半分で「書き込みオンリー言語」と呼ばれることがよくありますが、PHP の構文は理解しやすく、人間とコンピューターのインターフェイスは非常に親しみやすいものです。 ASP.NET とは異なり、PHP はすでに非常に安定しており、現在の問題を解決できます。

さらに、PHP は、ユーザーにとって非常に便利な関数 (Oracle データベースへの接続を開く、IMAP サーバーから電子メールを取得するなど) を多数事前定義しています。 PHP を学習するときは、完成した既製のサンプル スクリプトを多数見ることもできます。実際、PHP を使用する場合は、プログラムの作成時に発生する小さな構文エラーに時間を無駄にすることなく、これらの既存のスクリプト プログラムを完全に変更できます。

読者の誤解を防ぐために、説明する必要があります。「簡単」という言葉は、人や状況によって解釈が異なる場合があります。たとえば、多くの Web 開発者にとって、「簡単」という言葉は次のような意味であると思われます。マウス ドラッグです。 -and-drop 操作と WYSIWYG 環境。真に熟練した PHP ユーザーになるには、まず HTML を簡単に編集できる必要があります。まず WYSIWYG Web 編集ツールを使用して Web サイトをデザインし、ページを美しくし、クライアント関数を挿入してから、ページのソース コードに PHP 関数を追加します。いくつかの方法を詳しく紹介することもできます。いずれにせよ、プログラムコード部分に触れたくなければ、PHPを使用するためのさまざまな機能を完全に使いこなすことはできません。

PHP の上級ユーザーの大多数 (開発チームのメンバーのほとんどを含む) は、プログラム コードを手書きで書くことに熱心で、たとえば、手書きのプログラム コードは非常に重要だと考えています。美しく、整然としていて、ブラウザとの互換性が最大限に保たれているため、手書きのプログラム コードが唯一の方法であり、これを表現するために人々は躊躇せずに激しい言葉を使います。一部の PHP コミュニティ グループは、電子メールでサポートを提供したり、小規模な技術取引を行ったりします。これらのコミュニティに参加したい場合は、プレーン テキストの元のプログラム コードをすばやく解析できなければなりません。 WYSIWYG エディター ユーザーの中には、PHP コミュニティのメンバーに、Web ページを参照してエラーの診断を手伝ってもらうよう依頼することがありますが、良い評価を得ている人はほとんどいません。

PHP が非常にシンプルである理由をたくさん述べてきましたが、実際には、HTML よりは少し難しいだけですが、JavaScript や ASP よりは少し簡単です。さらに、JSP や ASP のコピーはまったくありません。ネット。

PHPが埋め込まれています
PHPはHTMLに埋め込まれています。言い換えれば、PHP ページは必要に応じて PHP モードの通常の HTML ページに「ジャンプ」するだけです。以下に例を示します。

例 1-1greeting.php


クライアントがページに対してリクエストを行うと、Web サーバーがそれを処理します。つまり、解決しようとしている PHP の部分をページ内で上から下に探します。まず、パーサーは、割り当てられた値 ($ でマークされた) を持つすべての変数を処理し、それらを後続の PHP コマンド (この場合は print() 関数) に挿入しようとします。すべてのステップがスムーズに進むと、図 1-1 に示すように、最終的にパーサーは HTML ページをクライアントのブラウザーに送り返します

クライアントのブラウザーから元のプログラム コードを表示する場合 [ソースを選択 (ソース コードを表示)]または、[表示] メニューから [PageSource (Web ページのソース コード)] をクリックすると、次のプログラム コードが表示されます。

これは、あなたが作成した HTML とまったく同じです。非常に単純ではありませんか。

PHP の HTML 埋め込み機能は、多くの助けを提供します:


◆ PHP は、WYSIWYG 編集ツールによって生成されたプログラム コードにすぐに挿入できます

◆。
◆ PHP はデザイナーとスクリプトライターの作業を分離します。
◆ HTML のどの行もプログラミング言語で書き直す必要はありません。
◆ PHP は人件費を削減し、効率を向上させることができます。

編集の必要はありません


おそらく、すべての埋め込みスクリプト言語の最も魅力的な点は、「書いて実行するだけ」であり、テストまたは使用する前に編集してバイナリコードに変換する必要がないことです。 PHP はリテラル言語です (今日のほとんどのコンピューター プログラミング言語と同様)。ただし、Zend は複雑なスクリプトの実行速度を向上させるために、中間形式にプリコンパイルするために舞台裏でいくつかの作業を行います。

コンパイルしたい場合はどうすればよいですか?逆アセンブルできないバイナリ コードを公開して、他の人がそのプログラム コードを使用できるようにしても、元のプログラムの内容を見ることができないようにしたい場合。この場合はコンパイルが必要です。 Zend チームは、PHP の「コンパイル」を可能にする最適化されたコンパイラー Zend Encoder を開発しています。これにより、同時に、複雑で大規模な PHP スクリプトの使用と開発も促進されます。


PHP にはクロスプラットフォーム機能があります


PHP は、最も一般的な UNIX (Mac OS X を含む) または Windows オペレーティング システムのいずれでも実行できます。現在、世界中のほとんどの HTTP サーバーは上記 2 つのオペレーティング システム上に構築されています。

PHP は現在、UNIX (Mac OSX を含む) または Windows 用の Apache HTTP サーバー、Microsoft の IIS、および Netscape Enterprise サーバー (iPlanet サーバーとも呼ばれます) の 3 つの主要な Web サーバーと互換性があります。また、Alex Belits の fhttpd、Microsoft の Personal Web Server (PWS)、AOLServer、Omnicentrix の Omniserver アプリケーション サーバーなど、いくつかのよく知られたサーバーでも利用できます。ただし、Macintosh プラットフォームは PHP をサポートしていません。表 1-2 に、オペレーティング システムと Web サーバーの組み合わせの簡単な表を示します。


表 1-2 PHP をサポートするオペレーティング システムと Web サーバー

現在、PHP は Macintosh 上で実行できるため、PHP はほぼすべてのプラットフォームにまたがって使用でき、任意の別の OS 側でお気に入りのツールを使用して開発できます。これらの PHP スクリプトを UNIX または Windows サーバーにアップロードします。第 3 章では、プロセスのこの部分について詳しく説明します。

PHP はマークアップ言語ではありません

PHP は本物のプログラミング言語です。これに対して、ColdFusion は HTML などの事前定義されたタグでマークされています。 PHP では、名前と定義を入力するだけで、ニーズに応じて関数を定義できます。 CouldFusion では、他の人が開発したタグを使用するか、カスタム拡張タグの開発プロセスを経る必要があります。
PHP コミュニティのメンバーはかつてこう言いました。「CouldFusion は簡単なことを簡単にしてくれますが、中程度の難易度のことは不可能にしてしまいます。」すべてのプログラマーは、中括弧と丸を使用できるようになると、マークアップの使用には戻れないことに同意するでしょう。

PHP の安定性 (stabie)

ここで言う [安定性] には 2 つの異なる意味があります:

1. サーバーを頻繁に再起動する必要はありません。

2. ソフトウェアを頻繁にアップグレードしたり変更したりする必要はなく、リリース間の非互換性もありません。

幸いなことに、これらの点は両方とも PHP に当てはまります。 Apache Server は、うらやましいほどの稼働率を備え、最も安定したメインストリーム Web サーバーとして一般に認識されています。最速ではなく、管理者にとって最も簡単なわけでもありませんが、Apache HTTP Server は、一度インストールしてセットアップすると、ほとんど失敗しません。また、設定を変更するたびにサーバーを再起動する必要もありません (少なくとも UNIX 側では)。 PHP はこの信頼性を継承しており、独自の堅牢性と軽量性を兼ね備えています。1999 年 10 月に Network Computing Labs で行われた 2 か月半にわたる実際のテストでは、Apache Server と PHP は環境安定性の点で簡単に優れていました。 IIS/Visual Studio の組み合わせと Netscape Enterprise Server/Java の組み合わせ。

機能性と安定性の点では、PHP も非常に優れています。開発チームは自分たちのプロジェクトに自信を持っており、明確な目標を持っているため、一部のユーザーからの不適切なリクエストは拒否します。彼らの努力のほとんどは、パーサーの実行速度の向上、より主流のデータベースとのデータ交換、より優れたセッション サポートの追加など、製品の改善につながりました。過去の経験から判断すると、PHP のバージョン間で削除された機能はほとんどありません。

PHP は非常に高速です

PHP は、特に UNIX プラットフォーム上の Apache モジュールにコンパイルされた場合、実行が非常に高速です。
CGI スクリプトと比較して、PHP4 は使用のほぼすべての側面ではるかに高速です。 CGI は「Can't Go Instantly」の略だというジョークがあります。多くの CGI スクリプトは C で書かれており、C は最下位段階の言語の 1 つであるため、ほとんどのプログラミング言語よりもはるかに高速ですが、HTTP サーバーから切断される各リクエストにはまったく新しいハンドラーの開始が必要であり、この問題によりアプリケーションの実行が妨げられます。 CGIの。この切断と降伏にはかなりの時間がかかるため、実行できる並行処理の量が制限されます。 Perl や Tcl などの他の CGI スクリプト言語は非常に遅いです。ほとんどの Web サイトは、パフォーマンスとセキュリティ上の理由から CGI を使用しなくなりました。

コンパイルではなくリテラルに実行されるため、パフォーマンスに多少の影響はありますが、Web サーバーモジュールの 1 つとしてみなされる PHP には、欠点よりも利点の方が多く、それでも価値があります。この方法でコンパイルすると、PHP は HTTP サーバーの一部になります。 (ColdFusion の場合のように) 別のアプリケーション サーバーへのラウンド トリップがないため、リクエストは可能な限り最大限に処理されます。
両者を比較するための公式ベンチマークはありませんが、ほとんどのアプリケーションで PHP が少なくとも ASP と同じくらい高速であることを示す多くの指標や小規模なベンチマークがあります (たとえば、実際に感じてみるには、Zend.com Web サイトに接続してください) )。


PHP はオープンです

オープンソース ソフトウェアのコスト上の利点についてはすでに説明しました。これらのライセンスのもう 1 つの主な結果は、ソフトウェアの完全なソース コードをディストリビューションに含める必要があることです。

実際、PHP の UNIX バージョンは、オリジナルのプログラム コードの形式でのみリリースされており、開発チームは数え切れないほどの要求を拒否しており、UNIX プラットフォーム用の公式バイナリ バージョンはリリースしないと決めています。最初は、初心者ユーザー (特に UNIX を初めて使用するユーザー) は、元のプログラム コードが 3 つ目の脚を使用しているようなものだと感じるかもしれません (非常に使いやすい)。しかし、ほとんどの人は依然として便利な rpm メソッドを使用することを楽しみにしています。ただし、実際的な理由と理想的な理由の両方から、フォルダーが [.c] および [.h] ファイルでいっぱいになることは避けられません。

最も直接的で実質的な利点は、本当に必要なコンテンツの PHP をコンパイルできることです。この方法には速度とセキュリティの点で利点があります。たとえば、より安全なバージョンまたは新しいバージョンの Apache が発売されたときに、必要に応じていつでも別のデータベースのインターフェイスをハングアップしたり、再コンパイルしたりすることを選択できます。また、必要に応じてこの関数をコンパイルすることもできます。 XML サポートが必要です。

オープンソース ソフトウェアを競合他社と区別するのは、価格だけでなく、制御でもあります。多くのソフトウェアは、特定の条件下で制御を放棄するように設定されていますが、関連する認可手順をよく見てください。通常、[制限] が表示されます。 】ソフトの使い方について説明します。自宅で実行することは許可されるかもしれませんが、オフィスでは許可されません。ラップトップにロードすることは許可されるかもしれませんが、ビジネス目的で使用するとルールに違反します。または、最も一般的には、任意の目的に使用できますが、ユーザーは元のプログラム コードを見たくないし、ましてや変更することも望んでいません。ユーザーにリンク ライブラリへの貢献を強制するコミュニティ ライセンス規制さえありますが、ユーザーは依然として最終製品の使用料を支払う必要があります。

注:

特にこれらのフリーソフトウェアの場合、ソフトウェアの認証に違反する方法を考えないでください。このルールに違反する正当な理由はありません。さらに、ソフトウェア開発者にとって、この種の報酬はあまりにも不公平です。

表1-3 ソースコード/料金範囲

img src=/upimg/allimg/20060629/0950575.jpg>

PHPのようなオープンソースソフトウェアは、利用目的を限定したり、利用者の範囲を限定したりするものではありません。または他の条件を提示します。これらの権利の中で最も重要なのは、ユーザーが元のプログラムを変更して配布できることです。最も極端なケースでは、この動作は「コールド フォーク」と呼ばれます。

これは、誰かの開発の方向性が PHP 開発チームと矛盾する場合、その人が何年にもわたって熱心に取り組んできたすべてのプログラム コードを自分の製品の基礎として使用できることを意味しており、それはオリジナルの作成者とは言えません。プログラム コードの一部は、正当な評価を受けるために、独自のファイルに記載する必要があります。ほとんどの場合、最初から始めるこの方法はおそらく良いアイデアではありませんが、ユーザーにはそれを試す権利があり、さまざまな理由で何度も試みられてきました。基本原則は、ソース コードのリリース方法によって、結果が得られるということです。すべてのユーザーが元のプログラム コードをすべて持ち帰って自由に使用できるため、1 人の個人または組織がプログラムをコミュニティ全体と争うことはほとんど不可能です。

オープンソースの新規ユーザーは、開発者もこの権利を享受していることに注意してください。作成者の Rasmus とその会社はいつでも現在のコミュニティから離れ、PHP をベースにした商用製品や競合製品での将来の作業の結果を目標にすることができます。もちろん、自分でバトンを引き継ぎたい人は、オリジナルのプログラム コードをまだ利用できます。また、PHP のような大規模な製品の場合、かなりの数のボランティア開発者が依然として改善に継続的に投資しています。

このような結果を見ると、オープンソース ソフトウェアの利点の 1 つが見落とされがちですが、それは、そのソフトウェアがどのように見えるかに関係なく、数年後には依然としてどこにでも存在することがかなり確実であるということです。今日の製品のライフサイクルが日の出のように短い世界では、長持ちするツールを選択するのは困難です。 OS/2、Amiga、Next、Newton、Firefly、Netscape、およびその他のかつて人気のあったテクノロジーを使用したことがある人々は、企業が倒産したり、テクノロジーのサポートを中止したり、別の企業や新しい企業に売却したりするときに、拒絶される痛みを知っています。方向性…などPHP を発見する前、私たちのグループは別のサーバーサイド スクリプト ツールを使用していました (今では活力がありません)。以前の気持ちは忘れましたが、まだ少し迷っています。オープンソース モデルにより、数年以内に予期せぬ変更が発生する可能性が減り、ユーザーの長期計画がより実現可能になります。

PHP は優れた統合機能を備えています

PHP は他のプログラムやプロトコルと簡単に通信できます。 PHP 開発チームは、大多数のユーザーに最大限の柔軟性を提供したいと考えています。

PHP は強力なデータベース接続機能を備えており、最も一般的な約 15 のデータベースと ODBC ドライバーをサポートしています。さらに、PHP は、POP3、IMAP、LDAP などのほとんどの主流プロトコルもサポートしています。 PHP4 は Java および分散オブジェクト アーキテクチャ (COM および CORBA) のサポートも提供し、n 層開発を初めて可能にします。

PHPがサポートされていない場合、その原因のほとんどは相手のアプリケーションが「クローズド」なオリジナルプログラムコードの形式であることが原因です。たとえば、Microsoft は PHP オープンソース プロジェクトとの連携に熱心ではありません。 PHP メーリング リスト フォーラムで Mac OS 9 や .NET のサポートがないことに不満を抱いているユーザーは、問題を理解していない可能性があります。

PHP は新しい機能をすぐに追加します

Web テクノロジーの開発を専門とするユーザーは、迅速なテクノロジーを提供するために製品標準で公式に使用されている新機能のせいで戸惑うことがあるかもしれませんが、PHP では問題ありません。これは、PHP チームがコミュニティの声なしに任意に機能をディストリビューションに追加することを意味するものではありませんが、独立した開発者が独自のディストリビューションに機能を追加することは可能です。拡張機能は、後でメインの PHP パッケージに追加されることで機能します。たとえば、Dan Libby の完璧な xmlrpc-epi 拡張機能は、PHP バージョン 4.1 がリリースされたときに採用されましたが、最初はスタンドアロン パッケージとして追加されました。

PHP の開発も非常に一貫性があり進行中ですが、PHP 3 と PHP 4 の間の移行など、大きな影響を与える問題がまだいくつかあります。これらは主にパーサー自体が原因であり、プログラマは実際にバージョン間で変更することがほとんどです。さらに、PHP チームはオープン ソース コードの「早期リリース、頻繁なリリース」の原則に従っており、開発者に変更を加えたりバグを提案したりする機会が比較的簡単にあります。 .NET のアプローチを見ると、開発者が Microsoft を 1 年近く待たせてきたことがわかりますが、Microsoft はまだ IIS を更新しておらず、.NET サーバーのメジャー バージョンさえリリースしていません。

PHP は人気が高まり、成長しています


1994 年の PHP の誕生以来、PHP はネットワーク開発のための優れたツールから、エンタープライズ構成に適した完全なプラットフォームへと変化し、ますます人気が高まっています。現在、PHP は 1,500 万を超える Web サイトで使用されており、ネットワーク アプリケーションで最も人気のある言語になりました。特にヨーロッパと北米では、PHP は金融、政府、運輸、電気通信、メディア、エンターテイメントなどの主要産業で使用されており、単純なオンライン言語開発ツールの領域から完全に脱却しています。

海外では、何百万人ものプロのエンジニアが主な開発言語として PHP を使用しており、さまざまな地域でクラブや同様のグループを結成し、PHP に関する全員が懸念している問題についてよく話し合っています。例えば最近では、欧州ではベルギー、オランダ、英国、北米では米国、カナダなどで活発な活動が行われています。最大のインターネット国である中国には、他のどの国よりも多くの PHP 愛好家がいます。私たち全員が一致団結して、中国最大の PHP 中国の設立を主張できることを願っています。これにより、中国におけるPHPの発展を促進し、幅広いPHP愛好家にコミュニケーションプラットフォームを提供してまいります。

ご覧のとおり、1998 年 10 月から 1999 年 10 月にかけて、PHP ユーザーのドメイン数は 800% の増加率を示しました。 Web サイトがユビキタスになり、そのほとんどが単なる静的な HTML ページではなくなるにつれ、PHP は急速に圧倒的な数のユーザーを獲得すると予想されます。

強い立場を判断するのは難しいですが、PHP は類似製品と比べて確かに強い立場にあります。 Web サーバーの 24% は Microsoft の Active Server Pages テクノロジーを使用しており、調査対象のドメインの約 4% は ColdFusion を使用しています。より大規模で正確なサンプルによると、全 Web サーバーの 24% が PHP を使用していると言えます。サーバーサイドのWebプログラミング言語。

Active Server Pages と ColdFusion は、多くの大規模な電子商取引 Web サイトが使用することを選択しているため、簡単に見ることができます。しかし、ほとんどの Web サイトは収入や政府ではなく情報の形で情報を提供しているため、高額な開発コストに対処できません。このタイプの Web サイトでは、PHP は競合他社よりも大きな競争上の優位性を享受できます。


PHPは誰のものでもありません

PC業界の進歩のほとんどは「特許権基準」の歴史であると言えます。まず足場を築こうとし、次に自分の利益のために互いに衝突し、顧客への負債、そして最終的には新しい標準に置き換えられて終わります...
しかし、ここ数年、インターネットは、自発性、標準ベース、プラットフォームに依存しない互換性などの特性に対して最大の寛容性を提供してきました。たとえば、電子メールがこれほど広く使用されているのは、客観的な存在が明確で固定された標準を使用しており、プラットフォーム上のすべてのプログラムがこの標準に準拠する必要があるためです。この標準を破ろうとした後の新しい開発プロジェクト (HTML Green に基づく電子メールひな形など) は、一般に標準からの逸脱であると考えられました。
さらに、顧客 (特に巨大なシステムを持つ大規模な顧客) は、独自の標準に準拠するために多額の費用を費やす傾向があります。これは単に市場動向が保証されておらず、現在の方法が XML と Web サービスによって推進されているためです。なぜなら、顧客は長年にわたり、Java RMI、CORBA、COM、さらには以前の独自のメソッドやデータ形式に不満を抱いてきたからです。

現在、ソフトウェア開発者は特許権とオープンスタンダードを統合しようとしています。企業は利益の維持を確保する必要がある一方で、オープンな標準を採用する必要があります。特許権基準に関連する大きな法的紛争がいくつかあり、これらは現在も解決中です。最終的には基礎となるソースコードが変更される可能性があり、関係する企業の将来の存続に影響を及ぼす可能性があります。これらの不確実性に直面して、そのような問題に対する将来の解決策を予測できることは、多くの現在の製造業者を魅了するでしょう。

PHP は特許権に反しているからこそ、最も高い柔軟性を持っています。 Active Server Pages とは異なり、サーバー オペレーティング システムに関連付けられていません。 Java Server Pages や ColdFusion とは異なり、独自のクロスプラットフォーム標準やミドルウェアに関連付けられていません。また、ブラウザ、プログラミング言語、ライブラリにも関連付けられていません。 PHP はスクリプトに従わず、オープンソース ソフトウェアとのみ連携します。この自主性と協力性の実践的な姿勢は、開発現場での PHP の開発をよりスムーズに行うのに役立ちます。

PHP コミュニティ PHP は世界中のユーザー コミュニティによって協力的に開発され、サポートされています。実際、多くのアイデアと熱意を持ったモンスターレベルのプログラマーがいます。彼らの最高のアイデアを貢献してください。大多数のユーザーと良好な関係を維持します。

ほとんどの初心者にとって、主なメリットは、無料、国境のない、無条件の技術サポートです。コンビニエンス ストアのセブンイレブンなどのメーリング リストの人々は、24 時間年中無休で質問に答えたり、コードのデバッグを手伝ったり、苦情を聞いたりすることができます。この種のサポートは、より人道的で、より現実的です。 PHP コミュニティのメンバーは、マニュアルを読むように頼んだり、データベース内の回答済みメーリング リストに質問を転送したり、苦情を申し立てたりすることを要求する場合がありますが、C スロットを切断するように要求したり、支払いを要求したりすることは決してありません。多くの場合、彼らはコードを見て何が問題なのかを教えてくれたり、アプリケーションをゼロから設計するのを手伝ってくれたりすることもあります。

PHP に慣れてきたら、恩返ししたり、貢献したくなるかもしれません。バグを追跡し、メーリング リストで他の人に提案を提供したり、他の人がアクセスできるようにプログラムのサンプルを公開リポジトリに投稿したり、関連ドキュメントを書いて他の人と知識を共有したり、もちろん C または C++ コードを書くこともできます。コミュニティに還元するためのあらゆる方法。

まとめ
PHP は、Web 開発のすべての問題を解決する魔法の鍵ではありませんが、多くの利点があります。 PHP は Web 開発者によって構築され、使用されています。サポートを提供している熱心なコミュニティも数多くあります。これらは非常に強力で信頼性が高く、非常に使いやすいです。あらゆる種類のバックエンド マテリアルに最適な形式の接続を提供します。無料だということを先ほど言い忘れていませんか? PHP を理解するには、最も一般的な Web 開発プロジェクトの多くで PHP を使用するのが最善です。

上記は、PHP 学習ガイド - 第 1 章の内容です。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。


関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート