PHP は複雑で高度なテクノロジーではありませんが、5 分でエキスパートになれると期待すべきではありません。初心者にとって最大の不快感は、PHP のフォールト トレランスがブラウザの HTML に対するフォールト トレランスよりもはるかに低いことかもしれません。 HTML で終了タグを省略しても、ほとんどのブラウザではページが表示されます。 PHP では、閉じ引用符、セミコロン、または中括弧を省略すると、図 1-3 に示すようなエラー メッセージが表示されます。これは PHP だけの機能ではなく、ASP、ASP.NET、ColdFusion を含むすべてのサーバー側テクノロジーに当てはまります。
図 1-3 PHP などのサーバーサイド言語は、ほとんどのコーディング エラーを許容しません
あなたが Adobe Dreamweaver や Microsoft Expression Web などのビジュアル デザイン ツールを使用している Web デザイナーまたは開発者であり、料金を支払う必要がない場合基礎となるコードに注目したら、アプローチを再考してください。 PHP と構造が不十分な HTML を混在させると、問題が発生する可能性があります。 PHP は、ループを利用して、データベース search の結果を表示するなど、反復的なタスクを実行します。ループは、すべての結果が表示されるまで、同じコード部分 (通常、コードには PHP と HTML の両方が含まれます) を繰り返します。ループを間違った場所に配置した場合、または HTML の構造が不十分な場合、ページは砂上の楼閣のように崩壊する可能性があります。これを行うことにまだ慣れていない場合は、W3C (World Wide Web Consortium) のマークアップ検証サービス (validator.w3.org/unicorn) を使用してページをチェックすることをお勧めします。
W3C は、Web の長期的な発展を保証するための標準 (HTML や CSS など) を設定し、ガイドラインを開発する国際組織です。 World Wide Webの創始者であるティム・バーナーズ・リーが率いています。 W3C の使命を理解するには
コードをコピーして貼り付けていただけますか
この本のコードをコピーすることに問題はありません。それがまさに W3C の目的です。模倣は子供の頃に誰もが学ぶものですが、ほとんどの人は模倣の段階を超えて、質問し、自分で実験し始めます。 Web ページにとって直接的な価値のない、退屈な 練習問題 で PHP を教えるつもりはありません。この本の目的は、新しく得た知識を実際のプロジェクトに直接適用できるようにすることです。また、コードが何をするのか、なぜコードが存在するのかについても説明します。たとえそれがどのように機能するかを正確に理解していなくても、コードのどの部分がニーズに合っているのか、どの部分はそのままにしておくのが最適かを知るのに十分な知識を得ることができます。
PHP は、多くの強力な機能を提供するツールボックスです。テキストを大文字に変換したり、フルサイズの画像からサムネイルを生成したり、データベースに接続したりするなど、さまざまなタスクを実行できる何千もの組み込み関数が備わっています。本当の力は、これらの関数をさまざまな方法で組み合わせ、独自の条件ロジックを追加することにあります。この本からさらに学ぶには、この本で学んだツールを試して、独自の解決策を考え出す必要があります。
PHP の安全性
PHP は家庭にある電気ナイフや包丁のようなものです。正しく使用すれば非常に安全ですが、無責任に操作すると多くの怪我を引き起こす可能性があります。この本の初版のインスピレーションの 1 つは、2005 年末に発生した一連の悪意のある攻撃から生まれました。これらの攻撃は、電子メール スクリプトの脆弱性を悪用して、Web サイトをスパム リレーに変えます。救われた人はほとんどいなかった。もちろん、私も免疫があったわけではありませんが、問題に気づいた後、脆弱性にパッチを当て、これらの悪意のある攻撃を時間内に阻止しました。それでも、人々は毎日、オンライン フォーラムに緊急の助けを求めるリクエストを送信しています。問題にどう対処するかを告げられても、彼らの反応はさらに必死になった。多くの人は、自分の Web サイトで使用しているコードについてまったく知らないと認めています。趣味で Web サイトを作成する人もいるのは理解できるかもしれませんが、これらの人の多くはクライアントのために Web サイトを作成する「プロ」です。こうした顧客は、受信トレイがスパムでいっぱいになり始めると当然腹を立てます。ホスティング会社は、サーバー上の安全でないスクリプトに耐えられないため、顧客のドメイン名を無効にするとさらに不満を抱くことは間違いありません。この話の教訓は、PHP が安全ではないということではなく、誰もが PHP を使用するセキュリティの専門家になる必要があるということではありません。 PHP セキュリティの 基本原則 を理解することが重要です。ユーザー入力は処理される前にチェックされる必要があります。これがこの本全体のテーマになることがわかります。ほんの少しの労力で、ほとんどのセキュリティ リスクを排除できます。
おそらく最も懸念される点は、この問題が最初に明らかにされてから 5 年以上経った今でも、多くの人が安全でない電子メール スクリプトを使用しているのを目にすることです。自分自身を守る最善の方法は、使用しているコードを理解することです。自分で問題を解決できない場合でも、スクリプトの作成者や他の専門家が提案した解決策を実装できます。
上記は、PHP の使用と学習がいかに難しいかについて述べたもので、その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。