欢迎来到这个 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/
相关文章: