字符串的拼接

在之前一讲《PHP 存储表单数据》中,我们有代码如下:

<?php

print('欢迎登录:');
print($_POST['username']);

?>

这里我们或许会有个疑问,有没有办法可以在一句语句中完成输出呢?在 PHP 当中,我们可以通过 . 来连接字符串,我们可以通过以下的方法来进行输出:

<?php

print('欢迎登录:'.$_POST['username']);

?>

另类的拼接方法

其实有过一点 PHP 基础的人可能会觉得奇怪,为什么我一直用 print 而不是 echo 来进行输出呢?在 PHP 中,我们也可以通过 echo 来进行输出,就像下面这样:

<?php

echo 'Hello, World!';

?>

我们会注意到,这里我们没有像以往调用某些函数一样用 () 来括住我们需要输出的内容,这是为什么呢?因为其实 echo 不是一个函数,而是一个语言构造器,具体原理是什么我们暂时不用深挖,我们只需要知道这样也可以进行输出就行。(其实 print 也可以这样玩)

但为什么我们要在这时候引入 echo 这个话题呢?因为 echo 中我们可以利用,来直接连接字符串的输出:

<?php

echo 'Hello, ', 'World!'; # 也会输出 Hello, World!

?>

字符串的分拆

有了字符串的拼接,我们也有字符串的分拆,在 PHP 中,我们可以通过 explode 函数来分拆一个字符串,这个函数会返回一个数组,里面是我们分拆之后的字符串:

<?php

$string = 'abc:123';
$data = explode(':', $string);

print($data[0]); # 输出 abc
print($data[1]); # 输出 123

?>

可以看到这里就是一个没有定义 key 的数组,我们就通过数组下标来获取相关的值。