PHP 官方文档 https://www.php.net/manual/zh/index.php
1. PHP语句结束标记
PHP语句,都以 分号做为结束标记,如果没有分号,代码会报错.
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];
- 获取系统中定义的所有常量get_defined_constants()返回值为一个数组;$cs = get_defined_constants();
```php
foreach ($cs as $key => $value) {
echo $key." --> ".$value . "<br>";
}
判断是否定义某个常量defined(“常量名”)函数接收一个字符串类型的常量名,返回值为bool类型
echo defined("PI");
echo defined("CARS");
echo defined("CARS1");
3. 预定义常量
PHP 向它运行的任何脚本提供了大量的预定义常量。不过很多常量都是由不同的扩展库定义的,只有在加载了这些扩展库时才会出现,或者动态加载后,或者在编译时已经包括进去了
注意: 下列括号中的内容表示该常量表示的数据类型,并不是参数PHP_VERSION (string)当前 PHP 版本的字符串,”主版本号.子版本号.阶段版本号[扩展信息]”形式。
- PHP_MAXPATHLEN (int)当前 PHP 版本支持的最大文件名(包括路径)长度。
PHP_OS (string)
运行 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 | 完整的类名。 |
echo "Warning: Division by zero in". __FILE__. " on line". __LINE__;
5. 输出
echo echo(string $arg1, string $… = ?): void输出一个或多个字符串,输出所有参数。不会换行。echo 不是一个函数(它是一个语言结构), 因此你不一定要使用小括号来指明参数,单引号,双引号都可以,并且没有返回值。 echo (不像其他语言构造)不表现得像一个函数, 所以不能总是使用一个函数的上下文。 注意,如果你想给 echo 传递多个参数, 那么就不能使用小括号。
echo "HELLO";
echo "<br>";
// 多个字符串之间使用 逗号 分隔
echo "HELLO","PHP","WORLD";
echo "<br>";
// 如果有多个字符串输出,不能加小括号
// echo ("HELLO","PHP","WORLD");
print(了解)print(string $arg): intPrint 用来输出一个字符串, 也就是输出 arg。print 实际上不是函数(而是语言结构),所以可以不用圆括号包围参数列表。和 echo 最主要的区别: print 仅支持一个参数,并总是返回 1。
print "<br>";
print "HELLO";
print "<br>";
// 多个字符串之间使用 逗号 分隔
// print "HELLO","PHP","WORLD";
print "<br>";
// . 是 php中的连接符,可以连接字符串,相当于js中的 +
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);
- var_dump()var_dump(mixed $value, mixed ...$values): void打印变量的相关信息var_dump() 也是一个函数,括号不能省略.此函数显示关于一个或多个表达式的结构信息,包括表达式的**类型与值**。数组和对象将递归展开值,通过缩进显示其结构。
```php
var_dump("HELLO");
echo "<br>";
$s = "PHP";
var_dump($s);
echo "<br>";
$animals = array("cat","dog",'bird','duck',"pig");
var_dump($animals);