发布于 2026-01-06 0 阅读
0

现代 PHP 速成课程 PHP 基本概念 DEV 全球展示挑战赛,由 Mux 呈现:展示你的项目!

现代 PHP 速成课程

PHP基础概念

由 Mux 主办的 DEV 全球展示挑战赛:展示你的项目!

欢迎来到这门现代 PHP 速成课程。为什么说是现代 PHP 呢?PHP 自 1994 年问世以来,已经发展了相当长的时间。如今,PHP 8.1 版本已经发展成为一门功能齐全的语言,完美适用于现代 Web 开发。

在本速成课程中,我们将涵盖2022年关于PHP需要了解的所有重要方面。

课程结束后,您将能够创建您的第一个 PHP 应用程序,并且您将拥有足够的 PHP 知识,以便继续使用 Laravel 和/或 Symfony 等 PHP 框架进行培训。

这门速成课程是免费的,会发布在 dev.to 上。我大概每两天会发布一篇新文章/帖子。为了不错过任何内容,你可以在 Twitter 上关注我:关注 @EricTheCoder_

什么是 PHP?为什么要使用 PHP?

PHP是一种面向对象的服务器端编程语言,用于开发Web应用程序。

PHP是当今网络上使用最广泛的服务器端编程语言。近80%的网站都使用了PHP代码。这规模相当庞大!PHP在短期内不会消失。

近年来,PHP发展迅速。面向对象以及其他一些现代概念的引入,极大地改变了PHP Web应用程序的编码方式。

现在数百万个网站都在使用 PHP,包括 Facebook、WordPress、维基百科、Tumblr、Slack 等等。

PHP社区非常庞大、充满活力且包容性强。

PHP 还可以依赖像 Symfony 和 Laravel(以及其他一些框架)这样的高质量框架。这些框架可以帮助您快速可靠地开发 Web 应用程序。

简而言之,使用 PHP,您可以执行小型、大型乃至超大型项目。PHP 可以处理每天几次点击,也可以处理每天数百万次点击。

PHP 安装

安装 PHP 有时可能会比较棘手,但不要因此而放弃。

如果您想立即开始培训,稍后再进行安装,可以使用网站https://replit.com/languages/php7从浏览器执行 PHP 代码。

在您的计算机上安装 PHP

您需要 PHP 版本 8.1

要查看您的计算机上安装的是哪个版本,您可以……

在终端中运行以下命令:

$ php -v
Enter fullscreen mode Exit fullscreen mode

如果缺少 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基础概念

在本教程中,我们将创建一个文件夹来存放接下来示例所需的所有文件。

$ mkdir demo-php
$ cd demo-php
Enter fullscreen mode Exit fullscreen mode

我们将从该文件夹中创建一个名为 index.php 的文件。

$ code index.php
Enter fullscreen mode Exit fullscreen mode

此命令将打开 vscode 并创建 index.php 文件。

请注意,本速成课程将使用 Visual Studio Code,但这并非必要条件。您可以自由使用您喜欢的编辑器。

文件类型的第一行

<?php
Enter fullscreen mode Exit fullscreen mode

此标签会告诉 PHP 服务器,其后的所有行都是服务器应该执行的 PHP 代码。

现在我们可以开始编写 PHP 代码了,而要开始的话,没有什么比经典的 Hello World 更合适的了!

<?php

echo 'Hello World';
Enter fullscreen mode Exit fullscreen mode

echo 函数允许在浏览器当前页面中显示文本甚至 html 代码。

要测试这段代码,你可以运行 PHP 自带的 PHP Web 服务器。

$ php -S localhost:5000
Enter fullscreen mode Exit fullscreen mode

-S 选项会在 localhost:5000 启动 Web 服务器。

如果您打开浏览器并访问地址http://localhost:5000,PHP 服务器将渲染默认文件 index.php,您将看到:

Hello World
Enter fullscreen mode Exit fullscreen mode

HTML 和 PHP

请注意,在 PHP 文件中,HTML 代码可以与 PHP 代码混合存在。

<h1>
    <?php echo 'Hello World'; ?>
</h1>
Enter fullscreen mode Exit fullscreen mode

这段代码完全有效。“?>”标签表示PHP代码的结束。

也可以包含多个 PHP 代码段。

<h1>
    <?php echo 'Hello World'; ?>
</h1>

<h2>
    <?php echo 'Sub title'; ?>
</h2>
Enter fullscreen mode Exit fullscreen mode

虽然 PHP 可以与 HTML 混合使用,但将 PHP 代码和 HTML 代码分别放在各自的文件中是一种良好的编程实践。我们稍后会详细讨论这个概念。

变量

变量用于存储代码中需要处理的不同值。

变量一旦存储在程序存储器中,就可以在以后使用。

例如,假设你想存储用户名,你可以使用一个变量,并将其命名为:$name,然后将其内容设置为'Mike Taylor'。

$name = 'Mike Taylor';
Enter fullscreen mode Exit fullscreen mode

请注意,在 PHP 中:

  • 变量名以美元符号 $ 开头。
  • 字符串用引号括起来。
  • 我们无需指定变量类型(例如:字符串)。PHP 是一种解释型语言,它会根据存储的值自动识别数据类型。
  • 另一方面,也可以在声明变量时指定其类型。我们稍后会看到这个概念。

以下是四种基本的 PHP 变量类型及其创建语法。

// string
$fullName = 'Mike Taylor';

// integer 
$count = 20;

// float (decimal number)
$bookPrice = 15.80;

// booleans
$isActive = true;
$isAdminUser = false;
Enter fullscreen mode Exit fullscreen mode

PHP 还有更高级的变量类型,例如数组和类。我们稍后会详细介绍所有这些内容。

最后,PHP 还有一些特殊类型,例如“null”,表示没有值。

至此,你应该能够理解这两个变量的内容并不相同。

$value = '100';

$value2 = 100;
Enter fullscreen mode Exit fullscreen mode

$value 是一个字符串变量,其内容为文本“100”。该变量不是可用于数学运算的数字。

$value2 是一个整型变量,其值为 100。该变量是一个数字,因此可以用于数学运算。

持续的

常量是指其值不能以任何方式改变的变量。创建常量有两种方法。

const MAX_USERS = 50;

define('MAX_USERS', 50);
Enter fullscreen mode Exit fullscreen mode

常量不以美元符号 $ 开头,并且按照惯例,常量用大写字母定义。创建常量后,如果尝试为其赋值,PHP 会报错。

类型化

PHP会在运行时自动确定变量的类型。

输出

在 PHP 中,有多种方法可以显示变量的内容,以下列举几种:

  • echo $name;(显示该值)
  • var_dump($isAdmin);(显示变量的类型和值)
  • print_r($items);(清晰地显示值)

确定变量的类型

可以使用 gettype() 函数获取变量的类型。

echo gettype($name); // string
echo gettype(20); // integer
echo gettype(9.95); // double
echo gettype(true); // boolean
Enter fullscreen mode Exit fullscreen mode

我们还可以使用 is_init()、is_float()、is_string() 和 is_bool() 函数来检查变量是否为特定类型。

echo is_int($name); // false
echo is_float(12.5); // true
echo is_string($name); // true
echo is_bool(10); // false
Enter fullscreen mode Exit fullscreen mode

力量类型(施法)

可以强制 PHP 使用特定类型,必要时还可以强制进行类型转换。为此,必须在变量或函数名前用括号添加类型名称。

$age = (int)readline('Your age:');
echo 'Your age is'. (string)$age;
Enter fullscreen mode Exit fullscreen mode

这里的 `cast(int)` 会强制 `readline()` 函数返回一个整数值。`cast(string)$age` 会在显示之前将整数转换为字符串。

评论

要在代码中添加注释,也就是添加一行不会被执行的代码,可以使用以下两种方法之一:

// This is a single line comment

/*
This is a comment
on several lines
*/
Enter fullscreen mode Exit fullscreen mode

命名规则

以下是我们编写代码时将使用的一些约定:

$firstName = 'Mike';  // variables name will be camelCase
function updateProduct() // functions name will be camelCase
class ProductItem // class name will be StudlyCaps
const ACCESS_KEY = '123abc'; // all upper case with underscore separators
Enter fullscreen mode Exit fullscreen mode

有关命名规则的更多详细信息,请访问 PRS 网站:https://www.php-fig.org/psr/

结论

今天就到这里,我大概每两天会发布一篇新文章。为了确保不错过任何内容,你可以在推特上关注我:@EricTheCoder_

文章来源:https://dev.to/ericchapman/modern-php-crash-course-3606