Heredoc 类似与双引号,内部转义字符和变量可以被解析,句法结构为
<<<EOT
字符串
EOT;
其中 EOT
为标识符,可以自定义,但是首尾标识符必须相同。开始标识符 EOT 后需换行,结束标识符 EOT 必须独占一行,且前面不许有空格。
<?php
$a ='Hello' ;
echo <<<EOT
$a Hello
EOT;
- Nowdoc
Nowdoc 类似于单引号,无法解析转移字符和变量。句法结构类似 Heredoc,但是需要在开始标识符加上单引号。
<?php
$a ='Hello' ;
echo <<<'EOD'//和 Heredoc 不同点
$a Hello
EOD;
<?php
$a = 'Hello';
$b = '$a World';
$c = "ShiYanLou";
$c = <<<EOT
$a \n World
EOT;
$d = <<<'EOT'
$a \n $c
EOT;
var_dump($b);
var_dump($c);
var_dump($d);
结果输出
string(8) "$a World"
string(13) "Hello
World"
string(8) "$a \n $c"
数据类型(二)
Array 数组
语法
定义数组可以用 array()
或 []
来新建一个数组。它接受任意数量用逗号分隔的键(key) => 值(value)对。key 可以是 integer(索引数组)或者 string(关联数组),value 可以是任意类型,如对象、数组。
<?php
$a = [
"b" => "bb",
"c" => "cc",
];
$b = [
"bb",
"cc"
];
$c = [
"bb",
"cc",
"a" => $a,
"b" => $b,
];
var_dump($a);
var_dump($a[0]);
var_dump($b);
var_dump($b['b']);
var_dump($c['a']['b']);
结果输出
array(2) {
["b"]=>
string(2) "bb"
["c"]=>
string(2) "cc"
}
NULL
array(2) {
[0]=>
string(2) "bb"
[1]=>
string(2) "cc"
}
NULL
string(2) "bb"
从结果中可以看到
- 如果没有键名,则数组默认使用从 0 开始的数字键名
- 打印数组不存在的 key 的值时,直接返回 NULL
- 数组可以多维嵌套,通过键名可以获取特定值
Object 对象
使用 new
可以创建一个新的对象
<?php
class foo
{
function do()
{
echo "Action do";
}
}
$f = new foo;
$f->do();
转换为对象
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
评论(0)