PHP 官方文档 https://www.php.net/manual/zh/index.php

1. PHP语句结束标记

PHP语句,都以 分号做为结束标记,如果没有分号,代码会报错.

2.常量

常量是指值不会发生变化的量。它具有全局性,能在整个脚本中贯穿使用。
如果常量值被定义,则该值在脚本执行期间都不能改变或取消定义。

  • 注意:
    1. 常量名前面没有 $ 符号
    2. 常量习惯上以全大写方式命名
  • 定义方式一define(key,value);
  • 定义方式二const 常量名 = 值;使用 const 关键字定义常量时,只能包含标量数据(bool、int、float 、string)。可以将常量定义为一个表达式,也可以定义为一个 array。还可以定义 resource 为常量,但应尽量避免,因为可能会造成不可预料的结果。 ```php // define(“PI”,3.14); // define(‘CARS’, array(“Benz”,”BMW”,”OOOO”));

const PI = 3.14; const CARS = array(“Benz”,”BMW”,”OOOO”);

echo PI; echo “
“; var_dump(CARS); echo “
“; echo CARS[2];

  1. - 获取系统中定义的所有常量get_defined_constants()返回值为一个数组;$cs = get_defined_constants();
  2. ```php
  3. foreach ($cs as $key => $value) {
  4. echo $key." --> ".$value . "<br>";
  5. }
  • 判断是否定义某个常量defined(“常量名”)函数接收一个字符串类型的常量名,返回值为bool类型

    1. echo defined("PI");
    2. echo defined("CARS");
    3. echo defined("CARS1");

    3. 预定义常量

    PHP 向它运行的任何脚本提供了大量的预定义常量。不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了
    注意: 下列括号中的内容表示该常量表示的数据类型,并不是参数

  • PHP_VERSION (string)当前 PHP 版本的字符串,”主版本号.子版本号.阶段版本号[扩展信息]”形式。

  • PHP_MAXPATHLEN (int)当前 PHP 版本支持的最大文件名(包括路径)长度。
  • PHP_OS (string)

    1. 运行 PHP 的操作系统。
  • PHP_EOL (string)当前平台中对于换行符的定义。

  • PHP_INT_MAX (int)当前 PHP 版本支持的最大整型数字。在 32 位系统中通常为 int(2147483647),64 位系统中为 int(9223372036854775807)。
  • PHP_INT_MIN (int)当前 PHP 版本支持的最小整型数字。在 32 位系统中通常为 int(-2147483648),64 系统中为 int(-9223372036854775808)。通常情况下 PHP_INT_MIN === ~PHP_INT_MAX。
  • PHP_INT_SIZE (int)当前 PHP 版本的整数大小(以字节为单位)。

    4 魔术常量

    PHP中有九个魔术常量它们的值随着它们在代码中的位置改变而改变。
    例如 LINE 的值就依赖于它在脚本中所处的行来决定。这些特殊的常量不区分大小写,如下
LINE 文件中的当前行号。
FILE 文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。
DIR 文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。它等价于 dirname(FILE)。除非是根目录,否则目录中名不包括末尾的斜杠。
FUNCTION 当前函数的名称。匿名函数则为 {closure}。
CLASS 当前类的名称。类名包括其被声明的作用域(例如 Foo\Bar)。当用在 trait 方法中时,CLASS 是调用 trait 方法的类的名字。
TRAIT Trait 的名字。Trait 名包括其被声明的作用域(例如 Foo\Bar)。
METHOD 类的方法名。
NAMESPACE 当前命名空间的名称。
ClassName::class 完整的类名。
  1. echo "Warning: Division by zero in". __FILE__. " on line". __LINE__;

5. 输出

  • echo echo(string $arg1, string $… = ?): void输出一个或多个字符串,输出所有参数。不会换行。echo 不是一个函数(它是一个语言结构), 因此你不一定要使用小括号来指明参数,单引号,双引号都可以,并且没有返回值echo (不像其他语言构造)不表现得像一个函数, 所以不能总是使用一个函数的上下文。 注意,如果你想给 echo 传递多个参数, 那么就不能使用小括号。

    1. echo "HELLO";
    2. echo "<br>";
    3. // 多个字符串之间使用 逗号 分隔
    4. echo "HELLO","PHP","WORLD";
    5. echo "<br>";
    6. // 如果有多个字符串输出,不能加小括号
    7. // echo ("HELLO","PHP","WORLD");
  • print(了解)print(string $arg): intPrint 用来输出一个字符串, 也就是输出 arg。print 实际上不是函数(而是语言结构),所以可以不用圆括号包围参数列表。和 echo 最主要的区别: print 仅支持一个参数,并总是返回 1。

    1. print "<br>";
    2. print "HELLO";
    3. print "<br>";
    4. // 多个字符串之间使用 逗号 分隔
    5. // print "HELLO","PHP","WORLD";
    6. print "<br>";
    7. // . 是 php中的连接符,可以连接字符串,相当于js中的 +
    8. print "HELLO"."PHP"."WORLD";
  • print_r()print_r(mixed $expression, bool $return = false): mixedprint_r() 是一个函数,使用时,必须加 括号print_r — 以易于理解的格式打印变量。如果输出内容是标量类型,那么直接输出值mixed 等同于 联合类型 object|resource|array|string|int|float|bool|null。$return 参数默认为 false, 表是只输出,返回数据, 如果改为 true, 则不会输出内容,而是将内容做为返回值返回.无意义. ```php print_r(“HELLO”); echo “
    “; // 默认输出时,直接将参数输出,返回值为1 $ret = print_r(“PHP”); echo “
    “; echo $ret; echo “
    “;

// 如果给定参数二 $return 的值为 true, 则不输出内容,将内容做为返回值返回 $ret = print_r(“PHP”, true); echo “
“; echo $ret; echo “
“; $animals = array(“cat”,”dog”,’bird’,’duck’,”pig”); print_r($animals);

  1. - var_dump()var_dump(mixed $value, mixed ...$values): void打印变量的相关信息var_dump() 也是一个函数,括号不能省略.此函数显示关于一个或多个表达式的结构信息,包括表达式的**类型与值**。数组和对象将递归展开值,通过缩进显示其结构。
  2. ```php
  3. var_dump("HELLO");
  4. echo "<br>";
  5. $s = "PHP";
  6. var_dump($s);
  7. echo "<br>";
  8. $animals = array("cat","dog",'bird','duck',"pig");
  9. var_dump($animals);