这将是一个非常简单的问题,我的代码看起来像这样:
<?php
$rawmessage = "This is what I want.--This is all junk.";
$fmessage = explode("--", $rawmessage);
//Alt. Universe #1: $fmessage = $fmessage[0];
echo $fmessage[0]; //"This is what I want."
//Alt. Universe #1: echo $fmessage;
?>
现在我知道这听起来有多愚蠢,但有没有办法可以在一行中将$ fmessage分配给[0]?因为1)我不想写$ fmessage [0],此时它不需要是一个数组,2)我想知道这是否可行,因为这不是我第一次我想只将数组的一部分设置为变量。我想写的例子(当然,在我的幻想土地上。这在现实中引发了错误。)
<?php
$rawmessage = "This is what I want.--This is all junk.";
$fmessage = explode("--", $rawmessage)[0];
//In my fantasy land, adding the [0] means that the array's key [0] value is set to $fmessage
echo $fmessage; //"This is what I want." For real.
?>
答案 0 :(得分:4)
list($fmessage) = explode('--', $rawmessage);
list()
不是函数,而是PHP语言构造(或者只是看起来像函数的运算符)。
它会将数组成员解包为局部变量......
$array = array('a', 'b', 'c');
list($a, $b, $c) = $array;
var_dump($a, $b, $c);
...输出
string(1) "a"
string(1) "b"
string(1) "c"