扫码关注官方订阅号
我唯一想到的办法是拆分后判断。但是既然 laravel 能直接把数组转换为 json ,我觉得应该是有简单的方法吧?
小伙看你根骨奇佳,潜力无限,来学PHP伐。
class User extends Model { public function getGenderAttribute($value) { $gender = ['1'=>'男','2'=>'女']; return $gender[$value]; } }
转成json和你说的问题完全没关系。。。不想判断,那就是字符串替换了比如: "sex":"1",你替换成你要的,可以使用中间件达到。。。不过感觉杀鸡焉用牛刀,直接接口逻辑里面就弄不就好了
model写一个afterFind的函数
const EVENT_AFTER_FIND = 'afterFind'; // 执行查询结束时触发
楼上也说了,转成json和题主的问题没有关系
我的建议你在取出数据的时候,肯定有一个format的过程,例如$user=$user->find($pk)//按照你的逻辑取数据就好ps:你不可能就把这样的数据返回给前端需要一个formart()函数处理数据信息中的img,url等信息so:$info = $user->formart($user);formart($user){
$user['url'] = ....; $user['sex'] = 三元运算;(你分开判断也可以) ''' ''' return $user;//
}
其实实现的方法很多种。。其他答案也可以。我跑个题设计数据库的时候
`sex` enum('male','female') or `sex` enum('male','female','other')
那么直接读取结果就可以了。
客户端可以根据 male | female 判断显示 男 | 女
直接在查找数据库的时候就进行替换了:select if(sex=1,"男","女") as sex from 表名 where...
一般来说,枚举的话倾向于用这种设计方式。
class Admin extends Model { protected $table = 'admin'; const STATUS_OPEN = '1'; const STATUS_CLOSED = '0'; public static $STATUS = [ self::STATUS_OPEN =>'开', self::STATUS_CLOSED =>'关', ]; }
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
转成json和你说的问题完全没关系。。。不想判断,那就是字符串替换了比如: "sex":"1",你替换成你要的,可以使用中间件达到。。。不过感觉杀鸡焉用牛刀,直接接口逻辑里面就弄不就好了
model写一个afterFind的函数
楼上也说了,转成json和题主的问题没有关系
我的建议
你在取出数据的时候,肯定有一个format的过程,
例如
$user=$user->find($pk)//按照你的逻辑取数据就好
ps:你不可能就把这样的数据返回给前端
需要一个formart()函数处理数据信息中的img,url等信息
so:
$info = $user->formart($user);
formart($user)
{
}
其实实现的方法很多种。。
其他答案也可以。我跑个题
设计数据库的时候
那么直接读取结果就可以了。
客户端可以根据 male | female 判断显示 男 | 女
直接在查找数据库的时候就进行替换了:select if(sex=1,"男","女") as sex from 表名 where...
一般来说,枚举的话倾向于用这种设计方式。