検索
ホームページバックエンド開発PHPチュートリアルPHP7 でやってはいけない 10 のこと

1. mysql_ 関数を使用しないでください

ついにその日が来ました。これからは mysql_ 関数を「使用すべきではない」だけではありません。 PHP 7 ではこれらがすべてコアから削除されているため、より優れた mysqli_ 関数、またはより柔軟な PDO 実装に移行する必要があります。


2. ジャンクコードを書かない

これは簡単に理解できるかもしれませんが、PHP 7 の高速化により問題の一部が隠れてしまう可能性があるため、ますます重要になります。 PHP 7 に移行してサイトの速度が速くなったからといって、サイトの速度だけで満足しないでください。

速度がいかに重要であるか、そして物事をより良くする方法を理解するには、「速度の最適化の開始」の記事を参照してください。

開発者として、常にオンデマンドでスクリプトをロードし、可能な場合はスクリプトを接続し、効率的なデータベース クエリを作成し、可能な場合はキャッシュを使用するなどのことを行う必要があります。


3. ファイルの末尾に PHP 終了タグを使用しないでください

ご覧のとおり、ファイルが PHP コードで終わる場合、WordPress のコア コードのほとんどは末尾の PHP タグを削除します。実際、Zend Framework はこれを明確に無効にしています。 PHP ではファイルの末尾に終了タグを必要とせず、それを削除することで末尾に空白文字が追加されないようにすることができます。


4. 不要な参照を渡さない

参照が良くない理由の例として、PHP には shuffle() と sort() が組み込まれています。処理された配列を返すのではなく、元の配列を変更しますが、これは非論理的です。


5. ループ内でクエリを実行しないでください

ループ内でクエリを実行することは非常に無駄です。システムに不必要なストレスを与え、ループの外で同じ結果をより速く達成できる可能性があります。このようなものが必要な状況に遭遇した場合、私は通常、データ配列の構築に使用する 2 つの別々のクエリで問題を解決します。その後、配列を反復処理するので、その過程でクエリを実行する必要はありません。

ここではWordPressを使用しているため、一部例外がある場合があります。 get_post_meta() はデータベースから大量のデータを取得しますが、特定のブログ投稿のメタデータをループする場合は、ループ内で get_post_meta() を使用できます。これは、WordPress が最初に呼び出すときに実際にすべてのメタデータを取得し、キャッシュするためです。後続の呼び出しでは、データベース呼び出しを行わずに、このキャッシュされたデータが使用されます。

これを理解する最良の方法は、関数のドキュメントを読み、Query Monitor などのツールを使用することです。


6. SQL クエリで * を使用しないでください

もちろん、これは MySQL の問題ですが、私たちは PHP で SQL コードを書くことに慣れているので、ほぼ同じです。いずれにせよ、特にデータベースに多数の列がある場合は、できる限り SQL クエリでワイルドカードを使用しないでください。

どの行が必要であるかを明示的に指定し、それらの行のみを取得する必要があります。これにより、使用されるリソースが削減され、データが保護され、内容が可能な限り明確になります。

SQL の場合は、利用可能なすべての関数を理解し、その速度を可能な限りテストする必要があります。平均値、合計、または同様の数値計算を計算する場合は、PHP 関数の代わりに SQL 関数を使用します。特定のクエリの速度がわからない場合は、それをテストし、他のコンパイルをいくつか試してから、最適なものを使用してください。


7. ユーザー入力を信頼しないでください

ユーザー入力を信頼するのは賢明ではありません。常に検証し、フィルタリングし、逃げ、チェックし、逃げ道を残しておきます。ユーザー データには 3 つの問題があります。私たち開発者はすべての可能性を考慮しているわけではないこと、データは多くの場合不正確であること、そして意図的に侵害される可能性があることです。

よく考えられたシステムがこれらの脅威から保護します。データベースを扱うときは、filter_var() などの組み込み関数を使用して適切な値を確認し、エスケープ (またはプリコンパイル) してください。

WordPress には問題を解決するための機能がいくつかあります。詳細については、「ユーザー データの検証、エスケープ、フィルタリング」の記事を参照してください。


8. 賢くなろうとしないでください

あなたの目標は、意図をより明確に表現するエレガントなコードを書くことです。複数の 3 値ロジック層やその他の手段を使用して、すべてを 1 単語の変数に短縮することで、各ページの 0.01 秒を最適化できる場合があります。しかし、これはあなたとあなたの周りの人たちにとって大きな問題を引き起こすだけです。

変数に賢明な名前を付け、コードを文書化し、簡潔さよりも明確さを優先します。大量のインライン値を必要とせず、多かれ少なかれドキュメント自体である標準のオブジェクト指向コードを使用する方がさらに良いでしょう。


9. 車輪の再発明をしないでください

PHP は古くから存在しており、Web サイトはさらに古くから存在しています。あなたが構築する必要があるものは何であれ、誰かがすでにそれを構築している可能性があります。他の人にサポートを求めることを恐れないでください。Github はあなたの友人であり、Composer、そして Packagist も同様です。

ロギング ツールから色補正ツール、パフォーマンス アナライザーから単体テスト フレームワーク、Mailchimp API から Twitter Bootstrap まで、すべてがキーを押す (またはコマンドを入力する) だけで利用可能です。ぜひ使用してください。


10. 他の言語を無視しないでください

あなたが PHP プログラマーであれば、少なくとも HTML、CSS、JavaScript、MySQL を理解する良い機会です。これらの言語をうまく扱えるようになったら、JavaScript を学び直しましょう。 JavaScript は jQuery ではありません。JavaScript をより効率的に使用するには、JavaScript を正しく学習する必要があります。

また、オブジェクト指向 PHP を学ぶことをお勧めします。これは時間を節約し、コード サイズが大きくなるとより良くなります。 C# や Java などの言語についても、OOP を理解すると理解しやすくなります。

パッケージマネージャー、ビルドスクリプト、CoffeeScript、LESS、SASS、YAML、スクリプトエンジン、その他の強力なツールについて学び、知識を広げてください。他のフレームワーク、特に Laravel を検討することを強くお勧めします。

Ruby、RoR、Android、iPhone、Windows Phone アプリ開発を学びながら、それらを活用して仕事をうまくやり遂げてみませんか?彼らは自分のコンフォートゾーンや仕事で求められるものから外れているので、これは無意味だと思うかもしれませんが、それが彼らなのです。どの言語にも、学ばなければならない実践的なことや、これまでに出会ったことのない新しいことがいくつかあります。トップの PHP 開発者全員が他の多くのプログラミング言語を知っているのは偶然ではありません。

上記は PHP7 でやってはいけない 10 のことです。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) にご注意ください。


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PHPの継続的な使用:その持久力の理由PHPの継続的な使用:その持久力の理由Apr 19, 2025 am 12:23 AM

まだ人気があるのは、使いやすさ、柔軟性、強力なエコシステムです。 1)使いやすさとシンプルな構文により、初心者にとって最初の選択肢になります。 2)Web開発、HTTP要求とデータベースとの優れた相互作用と密接に統合されています。 3)巨大なエコシステムは、豊富なツールとライブラリを提供します。 4)アクティブなコミュニティとオープンソースの性質は、それらを新しいニーズとテクノロジーの傾向に適応させます。

PHPおよびPython:類似点と相違点を調査しますPHPおよびPython:類似点と相違点を調査しますApr 19, 2025 am 12:21 AM

PHPとPythonはどちらも、Web開発、データ処理、自動化タスクで広く使用されている高レベルのプログラミング言語です。 1.PHPは、ダイナミックウェブサイトとコンテンツ管理システムの構築によく使用されますが、PythonはWebフレームワークとデータサイエンスの構築に使用されることがよくあります。 2.PHPはエコーを使用してコンテンツを出力し、Pythonは印刷を使用します。 3.両方ともオブジェクト指向プログラミングをサポートしますが、構文とキーワードは異なります。 4。PHPは弱いタイプの変換をサポートしますが、Pythonはより厳しくなります。 5. PHPパフォーマンスの最適化には、Opcacheおよび非同期プログラミングの使用が含まれますが、PythonはCprofileおよび非同期プログラミングを使用します。

PHPおよびPython:さまざまなパラダイムが説明されていますPHPおよびPython:さまざまなパラダイムが説明されていますApr 18, 2025 am 12:26 AM

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

PHPとPython:彼らの歴史を深く掘り下げますPHPとPython:彼らの歴史を深く掘り下げますApr 18, 2025 am 12:25 AM

PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。

PHPとPythonの選択:ガイドPHPとPythonの選択:ガイドApr 18, 2025 am 12:24 AM

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PHPとフレームワーク:言語の近代化PHPとフレームワーク:言語の近代化Apr 18, 2025 am 12:14 AM

PHPは、多数のWebサイトとアプリケーションをサポートし、フレームワークを通じて開発ニーズに適応するため、近代化プロセスで依然として重要です。 1.PHP7はパフォーマンスを向上させ、新機能を紹介します。 2。Laravel、Symfony、Codeigniterなどの最新のフレームワークは、開発を簡素化し、コードの品質を向上させます。 3.パフォーマンスの最適化とベストプラクティスは、アプリケーションの効率をさらに改善します。

PHPの影響:Web開発などPHPの影響:Web開発などApr 18, 2025 am 12:10 AM

phphassiblasifly-impactedwebdevevermentandsbeyondit.1)itpowersmajorplatformslikewordpratsandexcelsindatabase interactions.2)php'sadaptableability allowsitale forlargeapplicationsusingframeworkslikelavel.3)

スカラータイプ、リターンタイプ、ユニオンタイプ、ヌル可能なタイプなど、PHPタイプのヒントはどのように機能しますか?スカラータイプ、リターンタイプ、ユニオンタイプ、ヌル可能なタイプなど、PHPタイプのヒントはどのように機能しますか?Apr 17, 2025 am 12:25 AM

PHPタイプは、コードの品質と読みやすさを向上させるためのプロンプトがあります。 1)スカラータイプのヒント:php7.0であるため、基本データ型は、int、floatなどの関数パラメーターで指定できます。 3)ユニオンタイプのプロンプト:PHP8.0であるため、関数パラメーターまたは戻り値で複数のタイプを指定することができます。 4)Nullable Typeプロンプト:null値を含めることができ、null値を返す可能性のある機能を処理できます。

See all articles

ホット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

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

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境