PHP速查表



这份PHP速查表提供了一个对所有PHP编程概念的快速概述和复习,对学生和开发者都很有帮助。如果您正在准备任何考试或面试,我们建议您通读这份速查表,以学习和提升您的PHP技能。

脚本语法

使用以下语法编写PHP脚本:

<?php
   // Your PHP code here
?>

您也可以使用简短的echo标签:

<?= "Hello, World!" ?>

打印"Hello, World!"

您可以使用PHP的**echo**语句打印"Hello, World!"

<?php
   echo "Hello, World!";
?>

注释

PHP提供单行和多行注释。单行注释以**#**或**//**开头,多行注释用**/***和***/**括起来。

1. 单行注释

// Write single-line comment here
# Write single-line comment here

2. 多行注释

/* You can write
multi-line comment like this*/

变量

PHP变量存储数据和信息。变量可以使用美元符号 ($) 后跟变量名来声明。

<?php
   $age = 21;
   $name = "Kelly Hu";
?>

打印变量

您可以使用PHP echo语句来打印变量。

<?php
   $age = 21;
   $name = "Kelly Hu";
   echo "My name is $name";
   echo "<br>";
   echo "I am $age years old.";
?>

打印换行符

您可以使用echo语句和"\n"来在PHP中打印换行符。要在浏览器中显示换行符,请使用"<br />"标签。

1. 在控制台中打印

<?php
   echo "Hello, World!\n";
   echo "This is on a new line.\n";
?>

2. 在Web浏览器中打印

<?php
   echo "Hello, World!<br>";
   echo "This is on a new line.<br>";
?>

打印文本

您可以使用以下函数打印文本:

  • echo
  • print
  • printf
  • print_r

1. 使用echo打印

使用**echo**打印一个或多个字符串。

<?php
   echo "Hello, World!", " Hello PHP";
   $a = 10;
   $b = "Okay";
   echo "\nValue of a is $a and value of b is $b";
?>

2. 使用print打印

使用**print**打印单个字符串。

<?php
   print "Hello, World!";
?>

3. 使用printf打印

使用**printf**打印格式化字符串。

<?php
   printf("Hello, %s!", "World");
?>

4. 使用print_r打印

使用print_r进行调试,显示变量(特别是数组或对象)的人类可读信息。

<?php
   $arr = array('Hyderabad', 'Bangalore', 'Mangalore');
   print_r($arr);
?>

将HTML元素与文本嵌入

您可以使用echo和print函数将HTML元素与文本嵌入。

<?php
   echo "<h1>Hello, World!</h1>";
   echo "<p>This is a paragraph.</p>";
?>

在HTML中嵌入PHP

您也可以在HTML元素内嵌入PHP。

<html>
<body>
   <h1><?php echo "Welcome to My Website!"; ?></h1>
   <p><?php echo "This is a dynamic paragraph."; ?></p>
</body>
</html>

将PHP变量与HTML组合

您可以按如下方式在HTML元素中包含PHP变量:

<?php
   $name = "Kelly Hu";
   echo "<p>Hello, <em>$name</em>! Welcome to TutorialsPoint.</p>";
?>

数据类型

1. 字符串

字符串数据类型表示一系列字符。

$str1 = "Hello, World!";
$str2 = 'PHP Data Types';

2. 整数

整数数据类型表示介于-2,147,483,648和2,147,483,647之间的非十进制数(在32位系统上)。

$int = 42;

3. 浮点数(双精度浮点数)

浮点数(双精度浮点数)数据类型表示带有小数部分的数字。

$float = 3.14;

4. 布尔值

布尔数据类型表示两个可能的值:TRUE或FALSE。

$is_admin = true;
$is_guest = false;

5. 数组

PHP数组类型在一个变量中存储多个值。

// Indexed array
$cities = array("Hyderabad", "Bangalore", "Mangalore");
// Associative array
$person = array("name" => "Kelly Hu", "age" => 22);

6. 对象

数组类型是类的实例。

<?php
   class Person {
      public $name;
      public function __construct($name) {
         $this->name = $name;
      }
      public function getName() {
         return $this->name;
      }
   }
   $p = new Person("Kelly Hu");
   echo $p->getName();  // Outputs: Kelly Hu
?>

7. NULL

NULL类型表示没有值的变量。

$var = null;

字符串

PHP字符串是由单引号('Hello')或双引号("Hello")括起来的一系列字符。

1. 创建和打印字符串

您可以通过将字符串赋给变量来创建字符串变量,并使用echo语句打印它。

<?php
   $str = "Kelly Hu";
   echo "Hello, $str!";
?>

2. 字符串连接

可以使用点 (.) 运算符连接两个字符串。

<?php
   $str = "Hello" . " " . "World!";
   echo $str;
?>

3. 字符串长度

您可以使用strlen()方法获取字符串长度。

$len = strlen("Hello");  // Output: 5

4. 字符串函数

一些常用的字符串函数用于各种字符串操作,如下所示:

函数名称 用途 示例
strlen() 返回字符串的长度。
$str = "Hello World!";
echo strlen($str);
str_word_count() 返回字符串中单词的数量。
$str = "Hello World!";
echo str_word_count($str);
strrev() 返回反转后的字符串。
$str = "Hello";
echo strrev($str);
strpos() 返回子字符串第一次出现的索引。
$str = "Hello World!";
echo strpos($str, "World");
str_replace() 将字符串中的某些字符替换为其他字符。
$str = "Hello World!";
echo str_replace("World", "Harry", $str);
strtolower() 返回转换为小写的字符串。
$str = "HELLO WORLD!";
echo strtolower($str);
strtoupper() 返回转换为大写的字符串。
$str = "hello world!";
echo strtoupper($str);
trim() 移除两端的多余空格或预定义字符。
$str = " Hello World! ";
echo trim($str);
ltrim() 移除左侧的多余空格或预定义字符。
$str = " Hello World! ";
echo ltrim($str);
rtrim() 移除右侧的多余空格或预定义字符。
$str = " Hello World! ";
echo rtrim($str);
str_repeat() 将字符串重复指定次数。
$str = "Hi! ";
echo str_repeat($str, 3);
substr() 返回字符串的一部分。
$str = "Hello World!";
echo substr($str, 6, 5);
ucfirst() 返回将字符串首字母转换为大写的字符串。
$str = "hello world!";
echo ucfirst($str);
ucwords() 返回将字符串中每个单词的首字母转换为大写的字符串。
$str = "hello world!";
echo ucwords($str);
strcmp() 比较两个字符串(区分大小写)。
$str1 = "Hello";
$str2 = "hello"; echo strcmp($str1, $str2);
strcasecmp() 比较两个字符串(不区分大小写)。
$str1 = "Hello";
$str2 = "hello"; echo strcasecmp($str1, $str2);
str_shuffle() 随机打乱字符串的字符顺序。
$str = "Hello";
echo str_shuffle($str);
number_format() 格式化数字,以千位分隔符分组。
$num = 1234567.89;
echo number_format($num, 2);

您可以访问我们的参考页面了解更多关于这些方法的信息:PHP 字符串函数参考

转义字符

PHP 支持以下转义字符:

转义字符 描述
\\ 反斜杠
\' 单引号
\" 双引号
\n 换行
\r 回车
\t 水平制表符
\b 退格
\f 换页
\v 垂直制表符
\0 空字符
\xHH 十六进制值(HH 为十六进制代码)
\u{HHHH} Unicode 字符 (PHP 7.2+)

转义字符示例

<?php
   echo "Hello\nWorld";
   echo "Hello\tWorld.\n";
   echo "This is single quote: It\'s Me.\n";
   echo "This is double quote: \"Hello, World!\"\n";
   echo "This is a backslash: \\\n";
?>

运算符

PHP 运算符 是用于对变量和值执行运算的符号。以下是不同类型的运算符:

所有运算符列表

运算符类型 运算符 描述 示例
算术运算符 + 加法 5 + 3(输出 8)
- 减法 5 - 3(输出 2)
* 乘法 5 * 3(输出 15)
/ 除法 5 / 2(输出 2.5)
% 取模(余数) 5 % 2(输出 1)
赋值运算符 = 赋值 $x = 5;
+= 加法赋值 $x += 3;(等同于 $x = $x + 3;)
-= 减法赋值 $x -= 2;(等同于 $x = $x - 2;)
*= 乘法赋值 $x *= 2;(等同于 $x = $x * 2;)
/= 除法赋值 $x /= 2;(等同于 $x = $x / 2;)
%= 取模赋值 $x %= 3;(等同于 $x = $x % 3;)
比较运算符 == 等于(值) ($x == $y)
=== 全等(值和类型) ($x === $y)
!= 不等于 ($x != $y)
!== 不全等(值或类型) ($x !== $y)
< 小于 ($x < $y)
> 大于 ($x > $y)
<= 小于等于 ($x <= $y)
>= 大于等于 ($x >= $y)
逻辑运算符 && 逻辑与 ($x && $y)
|| 逻辑或 ($x || $y)
! 逻辑非 !$x
字符串运算符 . 连接(连接两个字符串) $str = "Hello" . " World";
增量/减量运算符 ++ 增量(加一) ++$x 或 $x++
-- 减量(减一) --$x 或 $x--

PHP 运算符示例

<?php
   // Arithmetic Operators
   $a = 10;
   $b = 3;
   echo $a + $b;
   echo $a % $b;

   // Assignment Operators
   $x = 5;
   $x += 2;
   echo $x;

   // Comparison Operators
   var_dump($x == 7);

   // Logical Operators
   if ($x > 5 && $x < 10) {
      echo "x is between 5 and 10.";
   }

   // String Operator
   $greeting = "Hello, " . "World!";
   echo $greeting;

   // Increment/Decrement Operators
   echo ++$x;
   echo $x--;
?>

条件语句

PHP 条件语句用于根据条件执行代码。条件语句包括:

  • if
  • if else
  • 多重 if else
  • 嵌套 if else
  • switch

1. if 语句

<?php
   $x = 10;
   if ($x > 5) {
      echo "x is greater than 5";
   }
?>

2. if else 语句

<?php
   $x = 3;
   if ($x > 5) {
      echo "x is greater than 5";
   } else {
      echo "x is not greater than 5";
   }
?>

3. 多重 if else 语句

<?php
   $x = 10;
   if ($x > 10) {
      echo "x is greater than 10";
   } elseif ($x == 10) {
      echo "x is equal to 10";
   } else {
      echo "x is less than 10";
   }
?>

4. 嵌套 if else 语句

<?php
   $x = 10;
   if ($x > 10) {
      echo "x is greater than 10";
   } elseif ($x == 10) {
      echo "x is equal to 10";
   } else {
      echo "x is less than 10";
   }
?>

5. switch 语句

<?php
   $day = 3;
   switch ($day) {
      case 1:
         echo "Monday";
         break;
      case 2:
         echo "Tuesday";
         break;
      case 3:
         echo "Wednesday";
         break;
      case 4:
         echo "Thursday";
         break;
      case 5:
         echo "Friday";
         break;
      case 6:
         echo "Saturday";
         break;
      case 7:
         echo "Sunday";
         break;
      default:
      echo "Invalid day";
   }
?>

数学函数

PHP 数学函数用于执行各种数学运算。以下是数学函数:

函数 示例
abs() echo abs(-5); // 输出:5
ceil() echo ceil(4.3); // 输出:5
floor() echo floor(4.7); // 输出:4
round() echo round(4.5); // 输出:5
max() echo max(1, 3, 2); // 输出:3
min() echo min(1, 3, 2); // 输出:1
pow() echo pow(2, 3); // 输出:8
sqrt() echo sqrt(16); // 输出:4
rand() echo rand(1, 100); // 输出:随机数
mt_rand() echo mt_rand(1, 100); // 输出:随机数
sin() echo sin(deg2rad(90)); // 输出:1
cos() echo cos(deg2rad(180)); // 输出:-1
tan() echo tan(deg2rad(45)); // 输出:1
deg2rad() echo deg2rad(180); // 输出:3.14159
rad2deg() echo rad2deg(M_PI); // 输出:180

常量

PHP 常量 是具有固定值的变量。常量使用 **define()** 定义。

<?php
   define("SITE_NAME", "MyWebsite");
   echo SITE_NAME;
?>

魔术常量

PHP 魔术常量 是具有特殊含义的特殊常量。以下是魔术常量:

常量名称 描述
__LINE__ 文件的当前行号。
__FILE__ 文件的完整路径和文件名。
__DIR__ 文件的目录。
__FUNCTION__ 函数的名称(区分大小写)。
__CLASS__ 类的名称(区分大小写)。
__METHOD__ 方法的名称(区分大小写)。
__NAMESPACE__ 当前命名空间(如果没有则为空)。
__TRAIT__ 特性的名称(区分大小写)。

魔术常量示例

<?php
   echo "Current line: " . __LINE__ . "<\n";
   echo "Full file path: " . __FILE__ . "<\n";
   echo "Directory: " . __DIR__ . "<\n";

   function tpFunction() {
      echo "Function name: " . __FUNCTION__ . "<\n";
   }

   class tpClass {
      public function tpFun() {
         echo "Method name: " . __METHOD__ . "<\n";
      }
   }

   namespace MyNamespace;
   echo "Namespace: " . __NAMESPACE__ . "<\n";
?>

循环

PHP 循环 多次重复执行一段代码。以下是循环的类型:

  • for
  • foreach
  • while
  • do...while

1. for 循环

<?php
   echo "The for Loop:<\n";
   for ($i = 0; $i < 10; $i++) {
      echo "Iteration: $i<\n";
   }
?>

2. foreach 循环

<?php
   echo "The foreach Loop:<\n";
   $cities = ['Hyderabad', 'Bangalore', 'Mangalore'];
   foreach ($cities as $city) {
      echo "City: $city<\n";
   }
?>

3. while 循环

<?php
   echo "The while Loop:<\n";
   $count = 0;
   while ($count < 10) {
      echo "Count: $count<\n";
      $count++;
   }
?>

4. do...while 循环

<?php
   echo "The do...while Loop:<\n";
   $count = 0;
   do {
      echo "Count: $count<\n";
      $count++;
   } while ($count < 10);
?>

函数

PHP 函数 是可以按需执行的代码块。以下是一个简单的函数示例:

<?php
   // Defining function
   function printName($name) {
      return "Hello, " . $name . "!";
   }

   // Calling function
   echo printName("Kelly Hu");
?>

数组

PHP 数组 用于存储多个相同或不同类型的值。以下是不同类型的数组:

  • 索引数组
  • 关联数组
  • 多维数组

1. 索引数组

<?php
   $cities = ["Hyderabad", "Bangalore", "Mangalore"];

   // Accessing elements
   echo $cities[0];
   echo $cities[1];
   echo $cities[2];
?>

2. 关联数组

<?php
   // Associative array with named keys
   $student = [
      "name" => "Kelly Hu",
      "age" => 21,
      "city" => "Brentwood"
   ];

   // Accessing elements by key
   echo $student["name"];
   echo $student["age"];
   echo $student["city"];
?>

全局变量 - 超全局变量

PHP 全局变量 (也称为超全局变量)是内置的全局数组,用于提供信息或跟踪变量。超全局变量包括:

超全局变量 描述
$_GET 收集通过 GET 请求中的 URL 参数发送的数据。
$_POST 收集通过 HTTP POST 方法发送的数据。
$_REQUEST 收集来自 $_GET$_POST$_COOKIE 的数据。
$_SESSION 为单个用户跨页面存储数据。
$_COOKIE 将数据作为小型文本文件存储在客户端的浏览器中。
$_FILES 管理文件上传。
$_ENV 保存环境变量。
$_SERVER 包含有关服务器和执行环境的信息。
$_GLOBALS 访问 PHP 脚本中的所有全局变量。

正则表达式

PHP 正则表达式是用于匹配字符串的模式。

1. 验证电子邮件地址

<?php
   $email = "[email protected]";
   if (preg_match("/^[a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/", $email)) {
      echo "Valid Email.";
   } else {
      echo "Invalid Email";
   }
?>

2. 验证电话号码

<?php
   $phone = "1234567890";
   if (preg_match("/^\d{10}$/", $phone)) {
      echo "It's a valid phone number.";
   } else {
      echo "It's not a valid phone number.";
   }
?>

3. 验证 URL

<?php
   $url = "https://tutorialspoint.com";
   if (preg_match("/\b(?:https?|ftp):\/\/[a-zA-Z0-9-]+\.[a-zA-Z]{2,6}\b/", $url)) {
      echo "It's a valid URL";
   } else {
      echo "It's not a valid URL";
   }
?>

表单处理

PHP 表单处理是关于通过 HTML 表单收集和验证用户数据。这是一个示例:

<form method="post" action="form.php">
   Name: <input type="text" name="name">
   <input type="submit" value="Submit">
</form>

<?php
   // Check if form was submitted or not
   if ($_SERVER["REQUEST_METHOD"] == "POST") {
      $name = htmlspecialchars($_POST['name']);
      if (!empty($name)) {
         echo "Hello, " . $name . "!";
      } else {
         echo "Fill your name.";
      }
   }
?>

日期和时间

使用 **date()** 函数获取日期和时间。这是一个示例:

<?php
   // Get the current date and time
   echo "Current Date: " . date("Y-m-d") . "<\n";
   echo "Current Time: " . date("H:i:s") . "<\n";
   echo "Full Date and Time: " . date("Y-m-d H:i:s");
?>

包含文件

使用 include 语句 在另一个 PHP 文件中包含文件。

include 'header.php';

文件处理

PHP 文件处理 用于创建、读取、写入和管理文件。

1. 打开和关闭文件

<?php
   $file = fopen("file1.txt", "w");
   fclose($file);
?>

2. 写入文件

<?php
   $file = fopen("file1.txt", "w");
   fwrite($file, "Some text to file.");
   fclose($file);
?>

3. 从文件中读取

<?php
   $file = fopen("file1.txt", "r");
   $content = fread($file, filesize("file1.txt"));
   echo $content;
   fclose($file);
?>

4. 附加到文件

<?php
   $file = fopen("file1.txt", "a");
   fwrite($file, "\nSome extra text.");
   fclose($file);
?>

5. 删除文件

<?php
   if (file_exists("file1.txt")) {
      unlink("file1.txt");
      echo "DONE.";
   } else {
      echo "File doesn't exist";
   }
?>

文件上传

PHP 文件上传 允许您将文件上传到服务器。

move_uploaded_file($_FILES["file"]["tmp_name"], "uploads/" . $_FILES["file"]["name"]);

Cookie

PHP Cookie 在客户端计算机上存储少量数据。

setcookie("user", "Kelly Hu", time() + (86400 * 30), "/");

会话

PHP 会话 为用户跨多个页面存储数据。

session_start();
$_SESSION["username"] = "Kelly Hu";

过滤器

PHP 过滤器用于验证和清理数据。

$email = filter_var($email, FILTER_VALIDATE_EMAIL);
广告