例如:
echo explode('@',$var); //but only echoing element 1 or 2 of the array?
代替:
$variable = explode('@',$var);
echo $variable[0];
谢谢你。
例如:
echo explode('@',$var); //but only echoing element 1 or 2 of the array?
代替:
$variable = explode('@',$var);
echo $variable[0];
谢谢你。
在支持数组取消引用的 PHP 版本上,您可以使用以下语法:
echo explode('@', $var)[0];
如果没有,您可以使用list()
:
list($foo) = explode('@', $var);
上面的语句将在变量中分配爆炸数组的第一个值$foo
。
从 PHP 5.4 开始,您可以编写:
echo explode('@', $var)[0];
在早期版本的 PHP 中,您只能通过技巧来实现该行为:
echo current(explode('@', $var)); // get [0]
echo next(explode('@', $var)); // get [1]
如果没有临时变量,就不可能在任意位置检索元素。
如果您不想每次都使用变量,这里有一个简单的函数可以整理您的代码:
function GetAt($arr, $key = 0)
{
return $arr[$key];
}
像这样调用:
echo GetAt(explode('@', $var)); // get [0]
echo GetAt(explode('@', $var), 1); // get [1]
在 PHP 5.4 之前,您可以这样做:
echo array_shift(explode('@', $var));
这将与explode 创建的数组的第一个元素相呼应。但它这样做时没有错误检查explode的输出,这并不理想。
list
也可以这样使用:
list($first) = explode('@', $var);
list(,$second) = explode('@', $var);
list(,,$third) = explode('@', $var);
就reset
这样使用
echo reset(explode('@', $var));