php8新增函数

复制代码
<?php
//纯枚举pure enum,没有绑定具体值,每个case就是唯一实例
enum Suit{
    case H;
    case D;
    case C;
    case S;
}
// echo Suit::H;
//$suit = Suit::cases();
//$val = Suit::D;
//print_r($val);
// echo $val instanceof Suit;
function getStatusColor(Suit $suit): string {
    return match($suit) {
        Suit::H => 'orange',
        Suit::D => 'blue',
        Suit::C => 'green',
        Suit::S => 'red'
    };
}
$a= getStatusColor(Suit::C);
print_r($a);

enum Color {
    case PENDING;
    case PROCESSING;
    case SHIPPED;

    function getColor(): string {
        return match($this) {
            self::PENDING => '橙色',
            self::PROCESSING => '蓝色',
            self::SHIPPED => '绿色'
        };
    }
}

echo Color::PENDING->getColor(); // 输出:橙色
function aa (int $a) {}


echo "<br/>";

//回溯枚举backend enum带有标量值的枚举,可以关联字符串或整数
enum Status: string {
    case PENDING = 'pending';
    case ACTIVE = 'active';
}
$sq = Status::ACTIVE;
print_r($sq);
echo $sq->name."=".$sq->value;
相关推荐
毕设源码-钟学长4 分钟前
【开题答辩全过程】以 基于PHP的家常菜谱教程网站为例,包含答辩的问题和答案
开发语言·php
星光一影43 分钟前
美容/心理咨询/问诊/法律咨询/牙医预约/线上线下预约/牙医行业通用医疗预约咨询小程序
mysql·小程序·vue·php·uniapp
jllllyuz2 小时前
基于遗传算法的33节点配电网网络重构MATLAB实现
matlab·重构·php
白狐_7983 小时前
计算机网络复习全书(详细整理)
开发语言·计算机网络·php
bing.shao3 小时前
Golang select多路复用踩坑
数据库·golang·php
catchadmin3 小时前
Laravel + Vue3 前后端分离开源后台管理框架 CatchAdmin v5.0 Beta 发布
php·laravel
郑州光合科技余经理4 小时前
解决方案:全球化时代下的海外版外卖系统
大数据·开发语言·前端·javascript·人工智能·架构·php
这儿有一堆花4 小时前
30分钟搭建 Typecho 个人博客教程
php·typecho
靳某某。4 小时前
linux 多个PHP版本切换版本
linux·chrome·php
Evan芙4 小时前
Linux I/O模型总结
linux·运维·php