欢迎来到这个 PHP 速成课程。PHP 自 1994 年就已存在,并且从那时起已经发生了很大的变化。现在,在 8.1 版中,PHP 是一种完整的语言,非常适合现代 Web 开发。
在本速成课程中,我们将介绍 2022 年有关 PHP 的所有重要方面。
课程结束后,你将能够创建你的第一个 PHP 应用程序,并且你将拥有足够的 PHP 知识来继续使用 Laravel 和/或 Symfony 等 PHP 框架进行培训。
什么是 PHP?为什么使用 PHP?
PHP 是一种面向对象的服务器端编程语言。用于开发 Web 应用程序。
PHP 是当今 Web 上使用最广泛的服务器编程语言。近 80% 的网站都有 PHP 代码。它非常庞大!PHP 不会很快消失。
近年来,PHP 已经发展了很多。面向对象和其他几个现代概念的加入极大地改变了 PHP Web 应用程序的编码方式。
现在有数百万个网站使用 PHP。包括 Facebook、Wordpress、Wikipedia、Tumblr、Slack 等等。
PHP 社区非常庞大、充满活力且包容性强。
PHP 还可以依赖 Symfony 和 Laravel(以及其他几个)等高质量框架。这些框架允许你快速可靠地开发 Web 应用程序。
简而言之,使用 PHP,你可以执行小型、大型和非常大的项目。PHP 可以处理每天几次点击或每天数百万次点击。
PHP 安装
安装 PHP 有时可能会很棘手,不要被这项任务耽误。
如果你想立即开始培训并稍后进行安装,可以使用网站 https://replit.com/languages/php7 从浏览器执行 PHP 代码。
在你的计算机上安装 PHP
你需要 PHP 版本 8.1
要检查你的机器上安装了哪个版本,你可以从终端运行此命令:
1  | php -v  | 
如果缺少 PHP 或安装的版本低于 PHP 8.1,则需要重新安装:
以下是 PHP 安装链接:
MacOS (hombrew):https://www.php.net/manual/en/install.macosx.packages.php
Windows (XAMPP):https://www.apachefriends.org/index.html
有关更多详细信息,请参阅官方 PHP 文档:https://www.php.net/manual/fr/install.php
PHP 基本概念
对于本教程,我们将创建一个文件夹来放置后面示例的所有文件。
1  | mkdir demo-php  | 
从此文件夹中我们将创建一个名为 index.php 的文件
1  | code index.php  | 
此命令将打开 vscode 并创建一个 index.php 文件。
请注意,在本速成课程中,我们将使用 Visual Studio Code,但这不是先决条件。你可以自由使用你最喜欢的编辑器。
在文件类型的第一行
1  | 
此标记将告诉 PHP 服务器,所有后续行都是服务器应执行的 PHP 代码。
因此,我们现在可以开始编写 PHP 代码,首先,没有什么比经典的 Hello World 更好的了!
1  | 
  | 
echo 函数允许文本甚至 html 显示在浏览器当前页面中。
要测试此代码,你可以运行 PHP 附带的 PHP Web 服务器
1  | php -S localhost:5000  | 
-S 选项在 localhost:5000 上启动 Web 服务器
如果你打开浏览器并访问地址 http://localhost:5000,PHP 服务器将呈现默认文件 index.php,因此你将看到:
1  | Hello World  | 
HTML 和 PHP
请注意,在 PHP 文件中,HTML 代码可能会与 PHP 代码混合
1  | <h1>  | 
此代码完全有效。?> 标记表示 PHP 代码结束。也可以有多个 PHP 代码段
1  | <h1>  | 
尽管 PHP 可以与 HTML 混合使用,但将 PHP 代码和 HTML 代码分别放在各自的文件中是一种很好的做法。我们稍后会讨论这个概念。
变量
变量用于存储你想要在代码中处理的不同值。一旦变量存储在程序内存中,就可以稍后使用。
例如,假设你想存储用户名,你可以使用一个变量并赋予它名称:$name,并将其内容设置为“William”
1  | $name = 'William';  | 
请注意,在 PHP 中:
变量的名称以 $ 符号开头
字符串用引号括起来。
我们不必指定变量的类型(例如:字符串)。PHP 是一种解释型语言。它根据存储在其中的值自动识别数据类型。
另一方面,可以在声明变量时指定变量的类型。我们稍后会看到这个概念。以下是 PHP 变量的 4 种基本类型以及创建它们的语法
1  | // string  | 
PHP 还有更高级的变量类型,如数组和类。我们稍后会详细介绍所有这些。
最后,PHP 还有一些特殊类型,如 null,表示没有值。此时你应该能够理解这两个变量的内容并不相同。
1  | $value = '100';  | 
$value 是一个字符串变量,其内容为文本 '100'。此变量不是可用于数学运算的数字。
$value2 是一个整数变量,其内容为数字 100。此变量是一个数字,因此可用于数学运算。
常量
常量是其值无法以任何方式改变的变量。有两种方法可以创建它们。
1  | const MAX_USERS = 50;  | 
常量不以 $ 符号开头,并且按照惯例,常量以大写字母定义。创建后,如果你尝试为其分配另一个值,PHP 将给出错误。
类型转换
PHP 在运行时自动确定变量的类型。
输出
在 PHP 中,有多种方式显示变量的内容,下面是其中一些:
- echo $name;(显示值)
 - var_dump($isAdmin);(显示变量的类型以及值)
 - print_r($items);(清晰地显示值)
 
确定变量的类型
可以使用 gettype() 函数获取变量的类型
1  | echo gettype($name); // string  | 
我们还可以使用函数 is_init()、is_float()、is_string() 和 is_bool() 检查变量是否属于某种类型
1  | echo is_int($name); // false  | 
强制类型(强制转换)
可以强制 PHP 使用特定类型,并在必要时强制转换。为此,你必须在变量或函数前的括号中添加类型。
1  | $age = (int)readline('Your age:');  | 
此处的转换 (int) 将强制将整数作为 readline() 函数的返回值。转换 (string)$age 将在显示之前将整数转换为字符串。
注释
要在代码中留下注释。即不会执行的一行,你可以使用以下两种技巧之一:
1  | // This is a single line comment  | 
命名约定
以下是我们将用来创建代码的一些约定:
1  | $firstName = 'William'; // variables name will be camelCase  | 
有关命名约定的更多详细信息,你可以查看 PRS 网站:https://www.php-fig.org/psr/
相关文章: