PHPの文字列関数を例を交えて解説

⚡ スマートサマリー

PHPにおける文字列は、文字の順序付き集合であり、PHPの中核となるデータ型の1つです。このチュートリアルでは、文字列を作成する4つの方法(シングルクォート、ダブルクォート、ヒアドキュメント、ナウドキュメント)を紹介し、最も便利な組み込み文字列関数を例を交えて解説します。

  • 🔤 弦とは何か: 文字列とは、文字の並びであり、名前、メッセージ、HTMLなどのテキストを保持するために使用されるPHPの基本的なデータ型です。
  • ' シングル引用: シングルクォートで囲まれた文字列はリテラルとして扱われます。変数は展開されず、エスケープされたクォートとバックスラッシュのみが解釈されます。
  •   Double 引用: Double引用符で囲まれた文字列は変数を展開し、\n などのエスケープ文字を解釈するため、動的なテキストに最適です。
  • 📄 ヒアドキュメント: Heredoc は、エスカレーションなしで変数展開を使用して複数行の文字列を構築しますping それらの中の二重引用符。
  • 🔒 Nowdoc: Nowdocは、複数行の生テキストに対してシングルクォーテーションのように機能し、解析や変数展開は行いません。
  • 🔧 文字列関数: strlen、strpos、substr、str_replace、explodeなどの関数は、文字列値を検査および変換します。
  • 🤖 AIアシスト: AIツールは、タスクに適した文字列関数を提案したり、クリーニングやフォーマットの補助ツールを生成したりすることができる。

PHP文字列

PHPの文字列とは何ですか?

文字列は文字の集合です。 String は、PHP がサポートするデータ型の XNUMX つです。

文字列変数には英数字を含めることができます。文字列は次のような場合に作成されます。

  • 変数を宣言し、文字列文字を代入します。
  • echo文では、PHPの文字列を直接使用できます。
  • PHPの文字列関数は、テキストを操作するのに役立つ言語構造です。
  • PHP で文字列がどのように機能するか、そしてその操作方法を学ぶと、非常に効率的で生産的な開発者になれます。

PHP 一重引用符を使用して文字列を作成する例と

それでは、PHPで文字列を作成および操作する4つの異なる方法を見ていきましょう。

シングルクォートを使用して PHP 文字列を作成する: 文字列を作成する最も簡単な方法は、シングルクォートを使用することです。

PHPで単純な文字列を作成する例を見てみましょう。

<?php
var_dump('You need to be logged in to view this page');
?>

出力:

string(42) "You need to be logged in to view this page"

一重引用符が文字列値の一部である場合は、バックスラッシュを使用してエスケープできます。

以下のコードは、一重引用符をエスケープする方法を示しています。

<?php
echo 'I \'ll be back after 20 minutes';
?>

出力:

I'll be back after 20 minutes

PHP で文字列を作成する Double 引用と例

Double 引用符は、単一引用符に比べて比較的複雑な文字列を作成するために使用されます。

変数名は二重引用符内で使用すると、その値が表示されます。

例を見てみましょう。

<?php
$name = 'Alicia';
echo "$name is friends with kalinda";
?>

PHP で文字列を作成する Double 引用

ここに、

  • 上の例では、Alicia の値を含む単純な文字列を作成します。
  • 変数名は、二重引用符で囲まれた文字列内で使用され、その値は実行時に補間されます。

出力:

Alicia is friends with kalinda

変数補間に加えて、二重引用符文字列は、改行を表す「\n」、ドル記号を表す「\$」などの特殊文字をエスケープすることもできます。

さらに例を挙げましょう。次のコードがあると仮定します。

<?php $pwd = "pas$word"; echo $pwd; ?>

出力:

NOTICE : Undefined variable
pas

上記のコードを実行すると、「Notice: Undefined variable」という通知が表示されます。

これは、$word が 変数.

ドル記号をリテラル値として処理したい場合は、それをエスケープする必要があります。

<?php
$word = "word";
$pwd = "pas\$word";
echo $pwd; ?>

出力:

pas$word

PHP ヒアドキュメントと例

ヒアドキュメントの手法は、二重引用符に比べてかなり複雑な文字列を作成するために使用されます。

Heredocは二重引用符のすべての機能をサポートしており、PHPの文字列連結を使用せずに複数行の文字列値を作成できます。

二重引用符を使用して複数行の文字列を作成すると、エラーが発生します。

エスケープなしで二重引用符を使用することもできますping それら。

以下の例は、ヒアドキュメントメソッドを使用して文字列値を作成する方法を示しています。

<?php

$baby_name = "Shalon";

echo <<<EOT

When $baby_name was a baby,

She used to look like a "boy".

EOT;

?>

ここに、

<< 文字列区切り文字です。

EOT はテキストの終わりの頭字語です。

文字列の先頭と末尾に、それぞれ独立した行で定義する必要があります。

注:EOTの代わりに、お好きなものを使用しても構いません。

PHPヒアドキュメント

出力:

When Shalon was a baby, She used to look like a "boy".

例付きの PHP Nowdoc

nowdoc の文字列作成方法は heredoc の方法に似ていますが、シングルクォーテーションの仕組みに従って動作します。

nowdoc内部では解析は行われません。

Nowdocは、解析する必要のない生データを扱う場合に最適です。

以下のコードは、nowdocの実装例を示しています。

<?php

$baby_name = "Shalon";

$my_variable = <<<'EOT'

When $baby_name was a baby,

She used to look like a "boy".

EOT;

echo $my_variable;

?>

出力:

When $baby_name was a baby, She used to look like a "boy".

PHP 文字列関数の例

PHP の文字列関数は、文字列値を操作するために使用されます。

それでは、PHPでよく使われる文字列関数をいくつか見ていきましょう。

演算 詳細説明 例: 出力
ストローワー すべての文字列文字を小文字に変換するために使用されます echo strtolower('ベンジャミン'); ベンジャミンを出力します
ストウッパー すべての文字列文字を大文字に変換するために使用されます echo strtoupper('ジョージ w ブッシュ'); 出力 ジョージ・W・ブッシュ
伸びる 文字列の長さ関数は、文字列内の文字数を数えるために使用されます。文字間のスペースもカウントされます。 echo strlen('アメリカ合衆国'); 24
爆発する 文字列を配列変数に変換するために使用されます $settings =explode(';', “host=localhost; db=sales; uid=root; pwd=demo”); print_r($settings); 配列 ( [0] => host=localhost [1] => db=sales [2] => uid=root [3] => pwd=demo )
substr 文字列の一部を返すために使用されます。3つの基本パラメータを受け取ります。短縮する文字列、開始位置、および返される文字数です。 $my_var = 'これは非常に長い文なので短くしたいと思います';echo substr($my_var,0, 12).'…'; これは再…
str_replace 指定された文字列内の指定された文字列値を検索して置換するために使用されます。 function 置換対象のテキスト、置換後のテキスト、および分析対象のテキストの3つの引数を受け取ります。 echo str_replace ('その', 'あれ', 'ラップトップは非常に高価です'); そのラップトップはとても高価です
ストロポス 文字列内の文字(複数可)の位置を特定して返すために使用します。この関数は2つの引数を受け取ります。 echo strpos('PHPプログラミング','Pro'); 4
sha1 文字列値の SHA-1 ハッシュを計算するために使用されます。 echo sha1('パスワード'); 5baa61e4c9b93f3f0682250b6cf8331b7ee68fd8
md5 文字列値のMD5ハッシュを計算するために使用されます。 echo md5('パスワード'); 5f4dcc3b5aa765d61d8327deb882cf99
str_word_count 文字列内の単語数をカウントするために使用されます。 echo str_word_count('これはとても長い文章なので、短くしたいと思います'); 12
UCファースト 文字列値の最初の文字を大文字にする echo ucfirst('尊敬'); アウトプットの尊重
LCファースト 文字列値の最初の文字を小文字にする echo lcfirst('RESPECT'); 出力に関する注意

よくあるご質問

ドット演算子を使用して文字列を結合します。たとえば、$full = $first . ' ' . $last; のように使用します。また、.= 演算子を使用して既存の文字列にテキストを追加することもできます。これは、変数の末尾にテキストを追加します。

PHP 8 では、`str_contains($haystack, $needle)` を使用します。これは true または false を返します。それ以前のバージョンでは、`strpos()` を使用し、結果が false と全く同じでないことを確認してください。位置 0 での一致は false とみなされるためです。

PHPの文字列は変更可能で、配列のようにインデックスでアクセスできます。$str[0]で文字を読み込み、$str[0] = 'H'で文字を変更することもできます。インデックスは0から始まるため、最初の文字は位置0にあります。

はい。AIは、trim、strip_tags、preg_replaceなどの関数を組み合わせて、空白文字の削除、タグの削除、大文字小文字の正規化、テキストのスラッグ化を行うヘルパー関数を作成できます。 Revルールを確認して、入力内容と完全に一致するようにしてください。

はい。テキストの検索、置換、分割など、目的を説明していただければ、AIがstrpos、str_replace、substr、explodeといった関数を提示し、それぞれの簡単な使用例を示します。