有没有更好的方法如何在PHP中获取数组中的其他元素?
假设数组中确实存在$a
。
$array = array('one','two');
if($a==$array[0]){
$b = $array[1];
}else{
$b = $array[0];
}
对于这么小的事情,似乎有太多的代码。
编辑:我不是在寻求三元语法。我正在寻找某种能够自动完成此功能的功能。
EDIT2:我知道一个字符串。我知道数组中存在字符串和另一个字符串。我想要另一个。我可以使用什么PHP功能?
答案 0 :(得分:3)
如果它保证只是一个包含两个元素的数组,并且$ a保证作为$ array中的值存在
$b = $array[1 - array_search($a, $array)];
答案 1 :(得分:2)
您可以使用ternary缩短语法。
$b = ($a==$array[0]) ? $array[1] : $array[0];
答案 2 :(得分:1)
没有真正的功能来执行您所描述的内容,但如果您希望缩短代码,并且不想使用三元组,那么您可以执行此操作:
$array = array('one','two');
$b = $array[0];
if($a==$array[0])
$b = $array[1];
如果如你所说的那样,$a
肯定存在于数组中。
答案 3 :(得分:0)
您可以使用:
$b = $a == $array[0] ? $array[1] : $array[0] ;
答案 4 :(得分:0)
假设您的阵列可能比两个元素长,那么您不能只进行搜索吗?
$b = $array[array_search($a, $array)];
答案 5 :(得分:0)
好的是让这个更难看,这是我的解决方案:
$b = $array[!array_search($a, $array)];