首页 > 后端开发 > php教程 > 一文聊聊php5.4的特性【总结】

一文聊聊php5.4的特性【总结】

青灯夜游
发布: 2023-04-11 07:08:01
转载
2829 人浏览过

本篇文章带大家聊聊php5.4的特性(Short Open Tag、数组简写形式、Traits等等),有需要的可以看看,希望对大家有所帮助!

一文聊聊php5.4的特性【总结】

Short Open Tag

Short Open Tag 自 PHP5.4 起总是可用。
在这里集中讲一下有关 PHP 起止标签的问题。即:

1

2

3

<?php

// Code...

?>

登录后复制

通常就是上面的形式,除此之外还有一种简写形式:

1

<? /* Code... */ ?>

登录后复制

还可以把<em><?php echo $xxoo;?></em>

简写成:<em><?= $xxoo;?></em>

这种简写形式被称为 Short Open Tag, 在 PHP5.3 起被默认开启,在 PHP5.4 起总是可用。

使用这种简写形式在 HTML 中嵌入 PHP 变量将会非常方便。

对于纯 PHP 文件(如类实现文件), PHP 官方建议顶格写起始标记,同时 省略 结束标记。

这样可以确保整个 PHP 文件都是 PHP 代码,没有任何输出,否则当你包含该文件后,设置 Header 和 Cookie 时会遇到一些麻烦 [注].

注:Header 和 Cookie 必须在输出任何内容之前被发送。

数组简写形式

这是非常方便的一项特征!

代码如下:

1

2

3

4

// 原来的数组写法

$arr = array("key" => "value", "key2" => "value2");

// 简写形式

$arr = ["key" => "value", "key2" => "value2"];

登录后复制

Traits

所谓Traits就是“构件”,是用来替代继承的一种机制。PHP中无法进行多重继承,但一个类可以包含多个Traits.

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

// Traits不能被单独实例化,只能被类所包含

trait SayWorld

{

    public function sayHello()

    {

        echo &#39;World!&#39;;

    }

}

class MyHelloWorld

{

    // 将SayWorld中的成员包含进来

    use SayWorld;

}

$xxoo = new MyHelloWorld();

// sayHello() 函数是来自 SayWorld 构件的

$xxoo->sayHello();

登录后复制

Traits还有很多神奇的功能,比如包含多个Traits, 解决冲突,修改访问权限,为函数设置别名等等。
Traits中也同样可以包含Traits. 篇幅有限不能逐个举例,

内置 Web 服务器

PHP从5.4开始内置一个轻量级的Web服务器,不支持并发,定位是用于开发和调试环境。
在开发环境使用它的确非常方便。

1

php -S localhost:8000

登录后复制

这样就在当前目录建立起了一个Web服务器,你可以通过 http://localhost:8000/ 来访问。
其中localhost是监听的ip,8000是监听的端口,可以自行修改。

很多应用中,都会进行URL重写,所以PHP提供了一个设置路由脚本的功能:

1

php -S localhost:8000 index.php

登录后复制

这样一来,所有的请求都会由index.php来处理。

你还可以使用 XDebug 来进行断点调试。

细节修改

PHP5.4 新增了动态访问静态方法的方式:

1

2

$func = "funcXXOO";

A::{$func}();

登录后复制

新增在实例化时访问类成员的特征:

1

(new MyClass)->xxoo();

登录后复制

新增支持对函数返回数组的成员访问解析(这种写法在之前版本是会报错的):

1

print func()[0];

登录后复制

推荐学习:《PHP视频教程

以上是一文聊聊php5.4的特性【总结】的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板