我只是想知道,我该如何改进这段代码?
$count = count($data['tags']);
if($count > 3)
{
$hashtags = implode(',', array_slice($data['tags'], 0,3));
}
elseif($count !== 0)
{
$hashtags = implode(',', array_slice($data['tags'], 0,$count));
}
else
{
$hashtags = 'data';
}
顺便说一句,是不是有一个关于stackoverflow的部分要求可能的代码改进?在页脚链接中找不到它
修改
通过改进,我主要考虑速记,而不是为同一件事寻找不同的方法(只是为了学习新东西)感谢帮助人员!
答案 0 :(得分:4)
难以回答的问题。
“改善”是什么意思?
如果代码完成了你需要它做的事情(我认为它确实如此),并且相对容易阅读和维护(我不熟悉几个PHP函数,但在查找它们之后,你的代码对我来说读得很好),那么你的代码不需要“改进”。
答案 1 :(得分:3)
没有测试,因为我不用PHP编码,但是这个怎么样?
$count = count($data['tags']);
$hashtags = $count == 0 ? 'data' :
implode(',', array_slice($data['tags'], 0,min(3,$count)));
答案 2 :(得分:2)
你可以像这样写这个:
$count = count($data['tags']);
$hashtags = $count !== 0 ? implode(',', array_slice($data['tags'], 0, min($count, 3))) : 'data';
代码行数较少,但不太可读。
答案 3 :(得分:1)
我试着把它全部排成一行,但这可能不是一个改进。你的代码对我来说很好。
$hashtags = $count === 0 ? 'data' : implode(',', array_slice($data['tags'], 0, ($count > 3) ? 3 : $count));