PHPの構文、文字列型?

WBOY
リリース: 2016-06-23 14:18:20
オリジナル
1049 人が閲覧しました

PHP 構文に規則はありますか: 文字列を定義するときは、文字列を一重引用符または二重引用符で囲むか、記号を付けないでください。

例:
$x=123;
$z='123'; これらの 3 つの変数は同じですか?


ディスカッションへの返信 (解決策)


最初のものは整数で、最後の 2 つは同じで、文字列型です

しかし、純粋な数値文字列は、PHP では数値と​​して使用されることがあります


たとえば、 $x = "123";
echo $x*3;
結果は 369 です

getType() 関数を使用して型を確認できます


$x=123; このステートメントは $x に整数を代入します

$ x="123"; $x='123' の代入演算の結果はどちらも文字列型の $x に代入します。一重引用符と二重引用符を使用してください。この投稿を参照してください

http://bbs.csdn.net/topics/390535456

PHP は、記号なしでどのような型であるかをどのように判断するのでしょうか?
$x=123;
$x=abc; それらは同じ種類ですか?

$x = 123;
異議なし、残高は整数として扱われます

echo gettype($x); //integer

var_dump($x)

$x = abc;
PHP はまず、この abc が定数であるかどうかをチェックし、定数であれば、定数 abc の値を取得します

それ以外の場合は、警告が発行されます 注意>: 未定義の定数 abc の使用 - 'abc' とみなされます

その後、文字列として解釈されます
echo gettype($x); // string
var_dump($x); //string(3) "abc"



xu もピンイン入力方法を使用しているのを見て、とてもうれしく思いました

$x = 123;
異論はありません。これはバランスのとれた積とみなされます。 整数
echo gettype($x); //int(123)
$x = abc; abc が定数であるかどうかを確認し、定数である場合は定数 abc の値を取得します
それ以外の場合は、警告を発行します 注意>: 未定義の定数 abc の使用 - 'abc' とみなされます

その後、文字列として解釈されます

echo gettype($x ); //string

var_dump($x); //string(3) "abc"

$x = 123; // 整数への自動型変換

$x = abc;文字列

そうですよね?

はっきり言いました

はっきり言いました

しかし、あまり明確ではありません!

「白か黒か」という考え方で理解しようと主張すると、本当に理解できません

phpの識別処理はこんな感じです
数字ですか?はい課題終了
それは定数ですか?はい、代入が終わりました

あとは文字列として扱います

PHPでは文字型はシングルクォーテーション、変数値はダブルクォーテーションで書くのが一般的です


まず、ソースコードを書くのはテキスト文字の場合です。 PHP はソース コードを分析し、この文字規則を使用して対応するデータ形式を識別します。

$x=123; //1

$y="123"; //2
$z='123'; //3

PHP 分析の場合:
1 は代入ステートメントとして理解されます。 are = このテキスト文字の場合、左側の $x は変数識別子、右側は「123」という 3 つの連続するテキスト文字です。
最初のテキスト文字が数値であることを検出するには、int データ形式を使用して後続のテキスト文字を照合します (簡単に言えば、連続した数字で構成され、正規表現は d+ です)。変数はint型です。

2 簡単に言うと、「」で始まり「」で終わり、その前に「or」がない正規表現が「([^"]|\")+") と一致します。」文字列の型が一致するということです

これは、ソースコードを識別するPHPのロジックを学名で構文アナライザーと呼びます。 構文アナライザーを通過すると、変数がどのような型であるかがわかります。




PHP は弱い型指定言語であり、変数で型を宣言する必要はありません。

まず、ソースコードに記述されているのはテキスト文字です。PHPはソースコードを解析する際に、この文字の規則に従って対応するデータ形式を特定します。

$x=123; //1
$y="123"; //2
$z='123'; //3

PHP 分析の場合:
1 は代入ステートメントとして理解されます。 are = このテキスト文字の場合、左側の $x は変数識別子、右側は「123」という 3 つの連続するテキスト文字です。
最初のテキスト文字が数値であることを検出するには、int データ形式を使用して後続のテキスト文字を照合します (簡単に言えば、連続した数字で構成され、正規表現は d+ です)。変数はint型です。
2 簡単に言うと、「」で始まり「」で終わり、その前に「or」がない正規表現が「([^"]|\")+") と一致します。」文字列の型が一致するということです

これは、ソースコードを識別するPHPのロジックを学名で構文アナライザーと呼びます。 構文アナライザーを通過すると、変数がどのような型であるかがわかります。

3 番目のものを分析するにはどうすればよいですか?

PHP 構文では、文字列は二重引用符または一重引用符で囲む必要があり、内容は数字、文字、または文字にすることが規定されています。右?


例:
$x='a*12'; //はい
$x="a*12"; // 構文エラー。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート