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;
相关推荐
北漂燕郊杨哥38 分钟前
phpStudy 手工安装最新稳定版 PHP 8.5.9(NTS)方法(Windows 本地开发)
windows·php·phpstudy
qetfw2 小时前
Debian 部署 Discuz! 论坛:Nginx、PHP 与 MariaDB 配置
linux·运维·nginx·debian·php·discuz
北漂燕郊杨哥3 小时前
Win11 环境下 phpStudy 安装 Redis 最新版,并为 PHP 8.5.9(NTS)配置 redis 扩展
数据库·redis·php
那年窗外下的雪.16 小时前
AIDC 学习日志 第 04 天 BGP Underlay 基础与路由选择
服务器·学习·php
COOLMO研究AI18 小时前
Python 如何在 AI 接口中实现请求幂等性:防止重复提交与重复扣费
人工智能·python·php
西安景驰电子18 小时前
《PTP精确时间协议系列》第一篇:从原理到应用,全面解读IEEE 1588
linux·运维·服务器·开发语言·网络·windows·php
wavemap21 小时前
HyperPHP 免费主机无限流量
服务器·php
长江&后浪21 小时前
防火墙的描述
开发语言·网络·php
三8441 天前
文件包含基础
php
qq_448011162 天前
C语言中的动态内存分配
c语言·开发语言·php