从php获得爆炸的价值

时间:2014-10-02 14:56:40

标签: php arrays explode

假设我有一个由;

分隔的字符串
  $something = "dog;cat;horse;fish";

我知道我可以轻松地将其爆炸并从爆炸数组中获取适当的值:

 $explode = explode(";",$something);

$explode[1]将是猫。

有没有办法可以在线进行此操作?我的意思是:

$favoritePet = explode(";",$something)[1];

$favoritePet等于猫

显然上述情况是错误的,但我希望这能说明我想要达到的目标,同时爆发并获得价值。

3 个答案:

答案 0 :(得分:10)

这称为数组解除引用,可以在PHP 5.4 +

中完成

答案 1 :(得分:0)

这是阵列解除引用,我希望通过

$favoritePet = explode(";",$something)[1];

它将在PHP 5.4 +

中将'cat'返回到$ favoritePet变量

在早期版本的PHP中,您可以这样做:

  echo current(explode(";",$something)); // get [0]
  echo next(explode(";",$something));    // get [1]

或者您可以编写自己的函数将其放在一行中,如下所示

  function GetValueAt($arr, $key = 0)
  {
     return $arr[$key];
  }

并将此功能称为

  echo GetValueAt(explode(';', $something));    // get [0]
  echo GetValueAt(explode(';', $something), 1); // get [1]

答案 2 :(得分:0)

以下是PHP 5.4更改日志的链接。看看第三行,它说:

  

添加了函数数组解除引用,例如FOO()[0]。

或者,你可以创建一个简单的函数,为你做同样的事情。

function r($array, $key){
  return (isset($array[$key])) ? $array[$key] : false; 
}

得到这样的结果:

  $a = explode(...);
  echo r($a, 1)