我有一个变量$myVariable = "hello world"
。是$myVariable
字符串文字吗?
我很好奇变量是否被认为是它自己的类型,或者它是否可以采用它评估的任何类型。
不,那么它就变成了一个变量的值。
// string literal as input
myfunction("Hello, world!");
// variable as input
$myvar = "Hello, world!";
myfunction($myvar);
在这种情况下,这string literal
只是引用的部分"Hello, world!"
字符串文字是计算机程序源代码中字符串值的表示。大多数情况下,在现代语言中,这是一个带引号的字符序列,如 x = "foo",其中 "foo" 是具有值 foo 的字符串文字(引号不是值的一部分)。
前两行来自: String literal wikipedia
所以$myVariable = "hello world"
字符串文字中的 no 是"hello world"
字符串文字Hello, world!
在您的示例中不是变量
可以通过四种不同的方式指定字符串文字:
单引号
双引号
heredoc 语法
nowdoc 语法
$myVariable
是字符串类型的变量,并且"hello world"
是字符串文字,就像$number
是整数类型的变量,5
而是整数文字一样,在$number = 5;
因此,变量假定其内容的类型。运行此命令以查看 PHP 为这些文字假定的类型:
$string = "hello world";
var_dump($string);
$number = 5;
var_dump($number);