【PHP】关于PHP8中match新语句的骚操作
CrazyPanda发表于:2024-01-06 22:27:56浏览:317次
PHP8新语法:match [更骚的匿名函数操作]
PHP8 新出的一个语法很好用,就是 match 语句。match 语句跟原来的 switch 类似,不过比 switch 更加的严格和方便
原来的 switch 语句代码如下:
function getStr( $strType ){ switch( $strType ){ case 1: $str = 'one'; break; case 2: $str = 'two'; break; default : $str = 'error'; } return $str; } //当输入数值 1 和 字符 '1' 不会进行类型判断 echo getStr(1); //one echo getStr('1'); //one echo getStr(2); //two echo getStr('2'); //two
换成 match 语句后:
function getStr( $strType ){ return match( $strType ){ 1 => 'number one', '1' => 'string one', default => 'error', }; } //可以看出输入数值 1 跟字符 `1` 返回的值是不同的 echo getStr(1); //number one echo getStr('1'); //string one
骚操作
function getStr( $strType ){ return match( $strType ){ 1 => (function(){ return 'number one'; })(), '1' => (function(){ return 'string one'; })(), default => 'error', }; } //虽然这种代码风格也能行的通,但是总感觉哪里怪怪的 echo getStr(1); //number one echo getStr('1'); //string one
总结:PHP8 新出的语法 match 相比原来的 switch 语法更加的方便和严格
猜你喜欢
- 【PHP】SQL查询优化方法
- 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。2.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。3.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表
- 【PHP】如何在ThinkPHP6中使用MongoDB进行数据存储
- 随着互联网的不断发展,数据的存储和处理越来越成为一个重要的方向。而mongodb则是一种适用于大规模数据和高性能应用场景的nosql数据库,它的高性能和可扩展性得到了众多开发者的拥护。在这篇文章中,我们将介绍如何在thinkphp6中使用mongodb进行数据存储。一、安装MongoDB拓展首先,我们需要在服务器上安装MongoDB拓展,以便我们在ThinkPHP6中使用MongoDB进行数据存储。在这里,我以Windows系统为例,讲解MongoDB的安装方法。1.下载MongoDB拓展我们可
- 【PHP】php判断字符串是否是中文
- 可以判断。判断方法:1、使用preg_match()函数配合正则来判断是否全是中文 ,语法“!preg_match("/[^\x80-\xff]/i",$str)”;2、使用preg_match()函数配合正则来判断是否包含中文 ,语法“preg_match("/[\x7f-\xff]/", $str)”或“preg_match('/[^\x00-\x80]/',$str)”。本教程操作环境:windows7系统、PHP8.1版、
- 【PHP】thinkphp合理使用数据备份与恢复功能
- ThinkPHP是一款开源的PHP开发框架,具有代码简洁、易于扩展等优点,被众多开发者广泛使用。在开发过程中,数据备份与恢复是一项十分重要的工作。本文将从几个方面介绍在使用ThinkPHP开发时合理使用数据备份与恢复功能的注意事项。首先,建议在开发过程中定期进行数据备份。数据备份可以防止数据丢失或损坏造成的不可恢复性。在ThinkPHP中,可以使用数据库备份与恢复的命令行工具来进行备份,具体操作如下:打开命令行终端,进入到ThinkPHP项目根目录下的thinkphp目录;输入ph
- 【PHP】使用 PHPMailer 实现邮件的实时发送
- 今天我们利用GitHub上20K+星星的项目 PHPMailer 实现一个接收询盘并实时同步到指定邮箱的功能。实现基本的HTML+CSS首先我们用 HTML+CSS 做一个简单的 form 表单<div> <div> <div>You can contact us at&nbs
- 【PHP】php中?:与??运算符有什么不同?
- 在PHP 7中,有两个类似的语法结构:“??”和“?:”,它们都是用于处理条件判断和返回值的运算符。尽管它们看起来相似,但它们的作用和用法有一些区别。"?:"是三目运算符,语法格式为:$result = $test ? $test : ′ ′ ; 意思就是当test存在时(即empty($test)为false),则返回它本身,否则返回空(当然也可以返回其他,这里的空只是举个例子)。"??"是php7新引入的语法,它相当于是isset($result[‘k
- 【PHP】centos7安装php7环境
- CentOS 7系统是一种广泛使用的服务器操作系统,其稳定性和安全性使其成为在服务器环境中使用的首选操作系统之一。而PHP 7则是一种广泛使用的高性能服务器端脚本语言,许多网站和应用程序都是使用PHP编写的。在这篇文章中,我们将介绍如何在CentOS 7系统上安装PHP 7环境。第一步:更新yum源在开始安装之前,我们需要更新系统的yum源。执行以下命令:sudo yum update登录后复制这将更新系统的yu
栏目分类全部>