Laravel中Str::ulid()为何始终返回大写ULID?
解决Laravel Str::ulid()返回全大写ULID的问题
你遇到的是Laravel中Str::ulid()默认生成全大写ULID的情况,而文档里的示例是大小写混合(或小写)格式,这是因为Laravel的Ulid实例默认使用大写的Base32编码输出。
要得到和示例一致的小写格式ULID,可以通过以下两种方式实现:
方法一:指定小写编码生成
直接调用Ulid实例的toBase32()方法并传入'lower'参数,生成小写格式的ULID:
return Str::ulid()->toBase32('lower');
方法二:转换已生成的大写ULID
如果已经拿到了大写的ULID字符串,直接转成小写即可:
return strtolower((string) Str::ulid());
额外说明
ULID的Base32编码本身大小写不敏感,Laravel默认输出大写只是实现层面的选择,文档中的示例仅作格式展示。两种格式功能完全等价,可根据实际需求选择使用。
内容的提问来源于stack exchange,提问作者DeveloperX
相关产品推荐
相关产品推荐

