PHP Tutorial 02 - PHP Basic Syntax

本部分讲解基础语法

这些只是基础语法,并不是全部语法,使用这些语法你就可以编写简单的网站了。

我不推荐直接学习完整语法,有些语法看上去是多余的,没有具体的环境,体现不出这些语法的美妙之处,之后我们讲框架的时候会将另外的一部分语法。

基础语法其实就是面向过程编程要用到的语法

  • php 标签
  • 类型
  • 变量
  • 常量
  • 表达式
  • 运算符
  • 流程控制
  • 函数
  • Errors
  • 异常处理
  • 引用的解释
  • 预定义变量
  • 预定义异常
  • 预定义接口

(摘录自 http://php.net/manual/zh/

实例#

这里基于实例来学习语法,而不是分离开单独讲每一个语法。

准备阶段#

  1. 在桌面上新建一个 index.php
  2. 按住 Shift,在桌面上点击鼠标右键,选择在此处打开命令窗口(或者在此处打开 PowerShell 窗口)
  3. 执行 php -S 127.0.0.1:8000

实例 1:php 标签#

上一篇文章中讲到的两种 Hello, world! 写法

代码片段 1

1
Hello, world!

代码片段 2

1
2
<?php
echo 'Hello, world!';

第二种写法其实是一种简略写法,完整的写法是

代码片段 3

1
2
3
<?php
echo 'Hello, world!';
?>

<?php?> 是一对 标记 ,他们之间的内容是 php 代码 ,没有被他们括住的代码都是 原样输出 的,比如代码片段 1,就是直接输出 Hello, world! 这句话。

如果你的 ?> 之后没有任何其他原样输出的内容了,那么这个结束标签可以省略,并且 php 推荐省略掉结束标签,防止结尾多输出多余的空格、回车之类的。

php 会忽略 php 代码中多余的空格、回车等等“空白字符”(Whitespaces)

代码片段 4

1
<?php echo 'Hello, world!'; ?>

这样写成写成一行完全没有问题,不过还是推荐大家把 PHP 开始结束标签写在单独一行中。

代码片段 5

1
Hello, <?php echo 'world'; ?>!

现在你能明白这句话的意思吗?

原样输出 Hello,,然后通过 echo 输出 world,再原样输出 !

代码片段 6

1
Hello, <?= 'world' ?>!

当 php 代码段中只有一个 echo 语句的时候,可以简化成短标签。不过官方没有推荐使用短标签。

由于 php 可以通过配置文件禁止使用短标签,所以为了保证代码可用,最好不要使用短标签。

实例 2:变量#

1
2
3
<?php
echo 'Hello, world!';
?>

上面这个代码似乎没有任何作用啊,所谓应用程序,至少要能根据不同输入给出相应输出,这个程序连个输入都没有有什么用啊。

1
2
3
4
<?php
$name = 'world';
echo 'Hello, ', $name, '!';
?>

$name

php 不需要事先声明就可以使用变量。或者说,如果变量不存在,程序会自动声明一个。

和 C 语言那种想使用变量必须定义不同,不需要声明变量会简化我们编写的代码,写代码效率更高。但是万一你写错一个字母,用了一个没有声明过的变量,有些时候就会变得难以检查错误。不过,随着 PHPStorm 这类 IDE 大量的即时代码检查,这类错误可以被尽早发现,不用纠结这个问题了。

未完待续