PHP7的特性用法有哪些

  1.use的用法

<?php

//  PHP 7 之前版本用法
use some\namespace\ClassA;
use some\namespace\ClassB;
use some\namespace\ClassC as C;

use function some\namespace\fn_a;
use function some\namespace\fn_b;
use function some\namespace\fn_c;

use const some\namespace\ConstA;
use const some\namespace\ConstB;
use const some\namespace\ConstC;

// PHP 7+ 用法
use some\namespace\{ClassA, ClassB, ClassC as C};
use function some\namespace\{fn_a, fn_b, fn_c};
use const some\namespace\{ConstA, ConstB, ConstC};
?>

  2.序列号函数unserialize的新增了过滤功能

// 转换对象为 __PHP_Incomplete_Class 对象
$data = unserialize($foo, ["allowed_classes" => false]);

// 转换对象为 __PHP_Incomplete_Class 对象,除了 MyClass 和 MyClass2
$data = unserialize($foo, ["allowed_classes" => ["MyClass", "MyClass2"]);

// 默认接受所有类
$data = unserialize($foo, ["allowed_classes" => true]);

  3.通过define定义常量数组

<?php
define('ANIMALS', [
    'dog',
    'cat',
    'bird'
]);

  echo ANIMALS[1]; // 输出 "cat"
  define("GREETING","Hello you! How are you today?",TRUE); 
  echo constant("greeting"); //返回常量的值


?>

 
4.三目运算符null合并

<?php
// 如果 $_GET['user'] 不存在返回 'nobody',否则返回 $_GET['user'] 的值
$username = $_GET['user'] ?? 'nobody';
// 类似的三元运算符
$username = isset($_GET['user']) ? $_GET['user'] : 'nobody';
?>

原创文章,作者:WDTHO,如若转载,请注明出处:http://www.wangzhanshi.com/n/7571.html

(0)
WDTHO的头像WDTHO
上一篇 2025年1月1日 16:41:30
下一篇 2025年1月1日 16:41:32

相关推荐

  • 怎么在CentOS78中安装PHP7

    1. CentOS7的默认PHP版本是PHP5,但是如果我们要安装PHP7,不需要将现有的PHP5删除,只要将PHP升级到PHP7即可。 使用 yum provides php 命…

    php 2025年1月1日
  • php7中的php-fpm参数配置

    安装php7+的,如果php-fpm的这几个参数设置不当了,会导致php-fpm启动不了,nginx站点不能解析php文件,报404错误。 相关命令: centos7+,启动php…

    php 2025年1月1日
  • 如何对php7进行性能优化

    PHP7已经发布了, 作为PHP10年来最大的版本升级, 最大的性能升级, PHP7在多放的测试中都表现出很明显的性能提升, 然而, 为了让它能发挥出最大的性能, 我还是有几件事想…

    php 2025年1月1日
  • PHP7新特性之抽象语法树AST带来的变化有哪些

    新的执行过程 PHP7 的内核中有一个重要的变化是加入了 AST。在 PHP5中,从 php 脚本到 opcodes 的执行的过程是: Lexing:词法扫描分析,将源文件转换成 …

    php 2025年1月1日
  • php7连接数据库的方式有哪些

     使用原生PHP来连接MySQL的方法有MySQL库、MySQLi库以及PDO,由于PHP 7已经废除MySQL库,所以建议使用MySQLi和PDO。 连接MySQLi有…

    php 2025年1月1日
  • Default value for parameters w

    今天迷之报了个错误,本来在另一条开发机上好好的,结果换了一台新的开发机就错误了,错误如下: PHP Fatal error: Default value for parameter…

    php 2025年1月1日
  • PHP 8有什么新特性

    PHP 8新特性 新的主要PHP版本PHP 8预计将于2020年底发布。它现在处于非常活跃的开发阶段,所以在接下来的几个月里,事情可能会发生很大的变化。 在这篇文章中,我将持续更新…

    php 2025年1月2日
  • ThinkPHP实现定时任务的操作步骤

    接到一个需求:定时检查设备信息,2分钟没有心跳的机器,推送消息给相关人员,用thinkphp5框架,利用框架自带的任务功能与crontab配合来完成定时任务。 第一步:分析需求 先…

    2024年12月17日
  • PHP7+REDIS3.2 phpredis scan命令 游标问题

    redis 中匹配某些key的方法一般有keys和scan两种方式,但是鉴于直接在线上执行keys操作可能会造成Redis卡死等问题,所以想看有哪些keys,只能使用scan来操作…

    php 2025年1月1日
  • php7 读取php.ini[4]

    1.需要实现的细节 在php.ini加上 [initest] initest.username=test nitest.userage=99 实现一个initest类 ,实现一个i…

    php 2025年1月1日

发表回复

登录后才能评论