PHPでよく使われる文字列整形関数、php関数のまとめ
文字列の書式設定は、文字列を特定の形式に処理することです。通常、ユーザーがフォームからサーバーに送信するデータは文字列の形式になっており、目的の出力効果を実現するには、これらの文字列を使用する前に特定の形式で処理する必要があります。一般的に見られる文字列書式設定関数は以下のとおりです:
注: PHP で提供される文字列関数によって処理される文字列のほとんどは、元の文字列を変更せず、フォーマットされた新しい文字列を返します。
1. スペースと文字列のパディング関数を削除します
スペースも有効な文字であり、文字列内の位置を占めます。ユーザーがフォームにデータを入力するとき、意図せずに意味のないスペースを入力してしまうことがよくあります。したがって、PHP スクリプトがフォームを通じて処理されたデータを受け取ると、最初に処理されるのは文字列内の余分なスペースやその他の意味のない記号です。この作業は、PHP で ltrim()、rtrim()、trim() 関数を使用して実行できます。これら 3 つの関数の構文形式は同じですが、機能が異なります。構文形式は次のとおりです:
string ltrim(string str[,string charlist]) //文字列の左側からスペースまたはその他の事前定義された文字を削除します
string rtrim(string str[,string charlist]) //文字列の右側から空白文字またはその他の事前定義された文字を削除します
stringrim(string str[,string charlist]) //文字列の両端から空白文字またはその他の事前定義された文字を削除します
これら 3 つの関数は、それぞれ文字列の左端、右端、両端から空白文字またはその他の事前定義された文字を削除するために使用されます。処理された結果は新しい文字列の形式で返され、元の文字列は変更されません。最初のパラメータ str は処理される文字列であり、必須です。 2 番目のパラメータ charlist は、削除する特殊シンボルを指定するために使用されるフィルタ文字列です。このパラメータはオプションです。フィルタ文字列を指定しない場合、デフォルトで次の文字が削除されます。
★"":スペース
★「0」:NULL
★「t」:タブ文字
★「n」:改行
★「r」: 入力
さらに、「..」記号を使用して、削除する必要がある範囲を指定することもできます。たとえば、「0..9」や「a..z」など、ASCII コード値の数字や小文字を削除します。 。使用コードは次のとおりです:
$str = "123 これはテストです ..."; // 左側の数字と右側の省略記号で始まるテスト文字列を宣言します
echo ltrim($str,"0..9"); //文字列の左側の数字をフィルタリングして出力します。これはテストです...
echo rtrim($str,".") //文字列の右側にあるすべての「.」をフィルタリングします。出力: 123 これはテストです
echo trim ($str, "0..9 A..Z ."); // 文字列の両端の数字、大文字、および "." をフィルタリングして出力: これはテストです
?>
必要に応じて文字列の内容をフィルターで除外できるだけでなく、str_pad() 関数を使用して必要に応じて文字列を埋めることもできます。データのペアリングや配置など、一部の機密情報を保護するために使用できます。その関数のプロトタイプは次のとおりです:
文字列 str_pad(文字列入力, int パッド長[,文字列 パッド文字列[, int パッドタイプ]])
この関数には 4 つのパラメータがあり、最初のパラメータは処理する文字列を指定します。 2 番目のパラメーターは、処理された文字列の長さを指定します。値が元の文字列の長さより小さい場合、操作は実行されません。 3 番目のパラメータは、パディングに使用される文字列を指定します。これはオプションのパラメータです。指定しない場合、デフォルトでスペースがパディングに使用されます。最後のパラメータはパディングの方向を指定します。これには、STR_PAD_BOTH、STR_PAD_LEFT、および STR_PAD_RIGHT の 3 つのオプションの値があり、それぞれ文字列の両端、左側、右側のパディングを表します。これもオプションのパラメータです。指定しない場合、デフォルト値は STR_PAD_RIGHT です。関数 str_pad() の使用コードは次のとおりです:
$str = "ランプ";
echo str_pad($str,10); //指定された長さは 10 で、デフォルトでは右側の「LAMP」を埋めるためにスペースが使用されます
echo str_pad($str,10,"-="STR_PAD_LEFT); //長さを 10 に指定し、左側にパディングする「-=-=-=LAMP」を指定します
echo str_pad($str,10,"_"STR_PAD_BOTH); //長さを10に指定し、左側を埋めるように「___LAMP___」を指定します
?>
2. 文字列の大文字と小文字の変換
PHP には 4 つの文字列大文字小文字変換関数が用意されています。それらはすべて、変換する文字列を渡すオプションのパラメータを 1 つだけ持っています。これらの関数を直接使用して、大文字と小文字の変換操作を完了できます。関数 strtoupper() は、指定されたすべての文字列を大文字に変換するために使用され、関数 strto lower() は、指定されたすべての文字列を小文字に変換するために使用されます。最初の文字は大文字に変換されますが、残りの文字は変更されません。関数 ucwords() を使用して、指定された文字列内のスペースで区切られたすべての単語の最初の文字が大文字に変換されます。以下に示すように、次のプログラムはこれらの関数の使用コードです。
echo strto lower($lamp); //出力: ランプは Linux、Apache、mysql、php で構成されます
echo strtoupper($lamp); //出力: LAMP は LINUX、APACHE、MYSQL、PHP で構成されます
echo ucfirst($lamp); //出力: Lamp は Linux、Apache、MySQL、PHP で構成されています
echo ucwords($lamp); //出力: Lamp は Linux、Apache、MySQL、PHP で構成されます
?>
echo ucfirst(strto lower($lamp)); //出力: Lamp は Linux、Apache、mysql、php
で構成されます ?>
3. HTML タグに関連する文字列の書式設定
URL に添付された HTML 入力フォームとリソースは、ユーザーがサーバーにデータを送信する方法です。適切に扱わないと、ハッカーがサーバーを攻撃する入り口となる可能性があります。たとえば、ユーザーが記事を公開するときに、その記事に HTML 書式設定タグや JavaScript ページ リダイレクト コードが含まれている場合、それを直接出力して表示すると、ページのレイアウトが確実に変更されます。これらのコードはブラウザに送信されるため、ブラウザはそれらを有効なコードとして解釈します。したがって、PHP スクリプトでは、ユーザーが送信したデータ コンテンツが最初に処理される必要があります。 PHP は、HTML テキストの出力を効果的に制御できる、非常に包括的な HTML 関連の文字列書式設定関数を提供します。
①関数nl2br()
ブラウザに出力される文字列「」は改行をマークしており、多くの人は改行記号として「n」を使用することに慣れていますが、ブラウザはこの文字列の改行文字を認識しません。複数行のテキストがある場合でも、ブラウザにはその行のみが表示されます。 nl2br() 関数は、文字列内の各改行「n」の前に HTML 改行文字「
」を挿入します。この関数の使用方法は次のとおりです:
」マークを追加します
/*次の 2 行の結果を出力します
1 行。
別の行。
*/
?>
②関数htmlspecialchars()
ブラウザに HTML タグを直接解析させたくない場合は、HTML タグ内の特殊文字を HTML エンティティに変換する必要があります。たとえば、「」に変換します。このように、ブラウザは HTML タグを解析せずに、ブラウザ内の HTML テキストをそのまま出力します。 PHP で提供される htmlspecialchars() 関数は、一部の事前定義された文字列を HTML エンティティに変換できます。この関数は、掲示板やゲスト メッセージ ボードなど、ユーザーが指定したテキストに HTML タグが含まれないようにするために使用されます。この関数で変換できる文字は次のとおりです:★「&」(アンパサンド)は「&」に変換されます。
★「""(ダブルクォーテーションマーク)は「"」に変換されます。
★「'」(シングルクォーテーション)は「'」に変換されます。
★「
★「>」(より大きい)は「>」に変換されます。
$str = "WebServer: & 'Linux' & 'Apache'" //文字列には HTML タグと一重引用符が含まれます
echo htmlspecialchars($str,ENT_COMPAT); //HTMLタグを変換し、二重引用符を変換します
echo "
n";
echo htmlspecialchars($str,ENT_QUOTES); //HTMLタグを変換し、2種類の引用符を変換します
echo "
n";
echo htmlspecialchars($str,ENT_NOQUOTES); //HTMLタグを変換し、引用符を外して変換します
echo "
n";
?>

aphpDependencyInjectionContaineriSATOULTAINATINAGECLASSDEPTINCIES、強化測定性、テスト可能性、および維持可能性。

SELECT DEPENTENCINGINOFCENT(DI)大規模なアプリケーションの場合、ServicElocatorは小さなプロジェクトまたはプロトタイプに適しています。 1)DIは、コンストラクターインジェクションを通じてコードのテスト可能性とモジュール性を改善します。 2)ServiceLocatorは、センター登録を通じてサービスを取得します。これは便利ですが、コードカップリングの増加につながる可能性があります。

phpapplicationscanbeoptimizedforspeedandEfficiencyby:1)enabingopcacheinphp.ini、2)PreparedStatementswithpordatabasequeriesを使用して、3)LoopswithArray_filterandarray_mapfordataprocessing、4)の構成ngincasaSearverseproxy、5)

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl

tomakephpapplicationsfaster、followthesesteps:1)useopcodecachinglikeopcacheTostoredscriptbytecode.2)最小化abasequeriesecachingingindexing.3)leveragephp7機能forbettercodeefficiency.4)

依存性注入(DI)は、明示的に推移的な依存関係によりPHPコードのテスト可能性を大幅に改善します。 1)DI分離クラスと特定の実装により、テストとメンテナンスが柔軟になります。 2)3つのタイプのうち、コンストラクターは、状態を一貫性に保つために明示的な式依存性を注入します。 3)DIコンテナを使用して複雑な依存関係を管理し、コードの品質と開発効率を向上させます。

DatabaseQueryoptimizationInpholvesseveralstrategESTOEnhancePerformance.1)selectonlynlynlyndorycolumnStoredatedataTransfer.2)useindexingtospeedupdataretrieval.3)revenmecrycachingtostoreres sultsoffrequent queries.4)


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

WebStorm Mac版
便利なJavaScript開発ツール

EditPlus 中国語クラック版
サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません

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

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

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター
