ホームページ >バックエンド開発 >PHPチュートリアル >一重引用符と二重引用符の違いの解決策

一重引用符と二重引用符の違いの解決策

WBOY
WBOYオリジナル
2016-06-13 13:37:15994ブラウズ

一重引用符と二重引用符の違い
textarea には 2 行のデータがあります。name=source
aaaaaaaaaa
bbbbbbbbbbb

私はexplode("rn",$_POST['source ']) その結果、explode('rn',$_POST['source']) を使用する要素
が 2 つあり、要素

が 1 つだけ存在することになります。-----解決策- ------ -------------
あなたの場所に関しては、一重引用符が使用されていることを責任を持ってお伝えします。

例: $src =explode( ',', $src );
------解決策---------
$str="hello";
echo '$str'; // 解析できない結果は次のとおりです。 $str
echo "$str"; // 解析された結果は hello

これは一重引用符と二重引用符の違いです。引用
笑 長い間 php を扱っていませんでした。
------解決策------------------
PHP が二重引用符に遭遇した場合、二重引用符を解析します。 "$i" などの引用符で囲まれた変数は実行され、i 変数の値が表示されます

ただし、'$i' 変数を一重引用符で囲むと、Php は $ を直接出力します。 i も変数 i の実際の値を表示せずに表示されます。
------解決策-----------
二重引用符は、次のように変数を展開します。 $varname=hello, "123{$varname}123" は最終的に "123hello123" になります。二重引用符は、復帰と改行を意味する "nr" などのエスケープ文字をエスケープします。
一重引用符は変数を展開しません。一重引用符自体を除いて、「nr」はこれらの 4 文字であり、他の意味はありません。
------解決策---------

話し合う

php が二重引用符に遭遇すると、二重引用符内の変数が解析され、たとえば、「$i」が実行され、i 変数の値が表示されます。

しかし、 '$i' 変数を入れます 一重引用符で囲むと、Php は変数 i の実際の値を表示せずに、$i を直接出力してページに表示します

------解決策---------
話し合う
textarea には 2 行のデータがあります。name=source
aaaaaaaaaa
bbbbbbbbbbb

explode("rn",$_POST['source']) を使用しました。結果は 2 つの要素です
要素を 1 つだけ持つには、explode('rn',$_POST['source']) を使用します

------解決策--------
一重引用符文字列ではバックスラッシュも機能します拡張された意味が失われます(バックスラッシュ \ の挿入と単一引用符 ' の挿入を除く)。したがって、変数置換を実行し、文字列に n (改行文字) などのエスケープ シーケンスを含める場合は、二重引用符
を使用する必要があります。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。