PHPページエンコーディング宣言メソッドヘッダーまたはメタエンコーディング
phpページはgbkエンコードされています
phpページはbig5でエンコードされています
通常、上記のコードはphpページのトップページに配置されます。 PHP ページのエンコーディングを実装するためにヘッダーを使用するかメタを使用するかの違い 1. ページのエンコード 1. タグを使用してページエンコーディングを設定します このタグの目的は、クライアントのブラウザがページを表示するために使用する文字セット エンコーディングを宣言することです。xxx には gb2312、gbk、utf-8 (mysql の utf8 とは異なります) などを指定できます。したがって、ほとんどのページはこのメソッドを使用して、このページを表示するときに使用するエンコーディングをブラウザーに指示し、エンコーディング エラーや文字化けを回避できます。しかし、場合によっては、この文がどの xxx であっても機能しないことがわかります。これについては後で説明します。 は HTML 情報に属し、サーバーが HTML 情報をブラウザーに渡したことを示す単なるステートメントであることに注意してください。 2. header("content-type:text/html; charset=xxx"); この関数 header() の機能は、括弧内の情報を http ヘッダーに送信することです。 括弧内の内容が記事に記載されている通りであれば、機能は基本的にタグと同じです。最初のものと比較すると、文字が似ていることがわかります。ただし、違いは、この機能がある場合、ブラウザは常に要求された xxx エンコーディングを使用し、決して従わないことです。そのため、この機能は非常に便利です。なぜそうなるのでしょうか?次に、https ヘッダーと HTML 情報の違いについて話さなければなりません: https ヘッダーは、http プロトコルを使用して HTML 情報をブラウザーに送信する前にサーバーによって送信される文字列です。 metaタグはhtml情報に属するため、header()で送信した内容が先にブラウザに届きますが、metaよりもheader()の方が優先される点が人気です(言えるかわかりませんが)。 header("content-type:text/html; charset=xxx") と の両方を含む PHP ページを追加すると、ブラウザーは前の http ヘッダーのみを認識し、メタは認識しません。もちろん、この関数は PHP ページ内でのみ使用できます。 また、前者は確実に機能するのに、後者は機能しないことがあるのはなぜでしょうか?という疑問も残ります。これが、次に Apache について話したい理由です。 3.デフォルトの文字セットを追加します Apache のルート ディレクトリの conf フォルダーには、Apache 設定ドキュメント全体である httpd.conf があります。 httpd.conf をテキスト エディタで開きます (バージョンによって異なる場合があります) には、adddefaultcharset xxx が含まれています。xxx はエンコーディング名です。このコード行の意味: サーバー全体の Web ページ ファイルの https ヘッダーの文字セットをデフォルトの xxx 文字セットに設定します。この行があることは、各ファイルにヘッダー ("content-type: text/html; charset=xxx") を追加することと同じです。これで、メタ設定が utf-8 であるにもかかわらず、ブラウザが常に gb2312 を使用する理由が理解できました。 Webページにヘッダー("content-type:text/html; charset=xxx")がある場合、デフォルトの文字セットが設定した文字セットに変更されるので、この機能は常に役に立ちます。 adddefaultcharset xxx の前に「#」を追加し、この文をコメントアウトし、ページにヘッダー (「content-type...」) が含まれていない場合は、メタ タグが有効になります。 概要: 並べ替え
Web プログラマーの場合は、各ページにヘッダー ("content-type: text/html; charset=xxx") を追加して、ページがどのサーバーでも正しく表示され、移植性が高いことを確認してください。 adddefaultcharset xxx 文に関しては、コメントするかどうかは意見の問題です。とりあえずコメントアウトしましたが、ページを書くときにサーバー上で正常に表示されるようにheader()も書く必要があります。 2. データベースのエンコード データベースにクエリを実行する前に、php プログラムはまず mysql_query("set names xxxx"); を実行します。ここで、xxxx は Web ページのエンコーディング (charset=xxxx) の場合、xxxx=utf8 です。 Web ページの charset=gb2312 、次に xxxx=gb2312 です。ほとんどすべての Web プログラムには、データベースに接続するための共通のコードがあり、このファイルに mysql_query ("set names") を追加するだけです。 セット名は、クライアントによって送信された SQL ステートメントで使用されている文字セットを示します。したがって、set names 'utf-8' ステートメントはサーバーに、「このクライアントからの今後の情報では文字セット utf-8 が使用される」ことを伝えます。また、サーバーがクライアントに送り返す結果の文字セットも指定します。 (たとえば、select ステートメントを使用する場合、列の値にどの文字セットが使用されるかを示します。) PHPページの統一コーディング MySQL データベースのエンコーディング、HTML ページのエンコーディング、および PHP または HTML ファイル自体のエンコーディングはすべて一貫している必要があります。 1. MySQL データベースのエンコーディング: データベースの作成時にエンコーディング (gbk_chinese_ci など) を指定します。データ テーブルの作成、フィールドの作成、データの挿入時にエンコーディングを指定しないでください。データベースのエンコーディングは自動的に継承されます。 データベースに接続する場合は、データベースに接続した後に実行できるコーディングもあります。
2. HTML ページのエンコーディングは、次の行の設定を参照します。 3. phpまたはhtmlファイル自体のエンコード: editplus を使用して php ファイルまたは html ファイルを開き、保存するときにエンコードを選択します。データベースとページのエンコードが gbk の場合は、ここでエンコードとして ansi を選択します。 データベースとページのエンコードが utf-8 の場合、ここでも utf-8 が選択されます。 4. JavaScript または Flash で渡されるデータは UTF-8 でエンコードされているため、データベースとページのエンコードが GBK の場合は、トランスコードしてからデータベースに書き込む必要があることに注意してください。
5. PHP プログラムでは、PHP ソースのエンコーディングを指定する行を追加できます。プログラム:
|

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

PHP開発における固体原理の適用には、次のものが含まれます。1。単一責任原則(SRP):各クラスは1つの機能のみを担当します。 2。オープンおよびクローズ原理(OCP):変更は、変更ではなく拡張によって達成されます。 3。Lischの代替原則(LSP):サブクラスは、プログラムの精度に影響を与えることなく、基本クラスを置き換えることができます。 4。インターフェイス分離原理(ISP):依存関係や未使用の方法を避けるために、細粒インターフェイスを使用します。 5。依存関係の反転原理(DIP):高レベルのモジュールと低レベルのモジュールは抽象化に依存し、依存関係噴射を通じて実装されます。

記事では、PHP 5.3で導入されたPHPの後期静的結合(LSB)について説明し、より柔軟な継承を求める静的メソッドコールのランタイム解像度を可能にします。 LSBの実用的なアプリケーションと潜在的なパフォーマ

システムが再起動した後、UnixSocketの権限を自動的に設定する方法。システムが再起動するたびに、UnixSocketの許可を変更するために次のコマンドを実行する必要があります:sudo ...

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。

記事では、入力検証、認証、定期的な更新など、脆弱性から保護するためのフレームワークの重要なセキュリティ機能について説明します。

この記事では、フレームワークにカスタム機能を追加し、アーキテクチャの理解、拡張ポイントの識別、統合とデバッグのベストプラクティスに焦点を当てています。
