Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/233.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用list()或类似方法实现左手赋值,同时保留除第一个参数以外的所有其他参数的数组_Php_Arrays_Split - Fatal编程技术网

Php 使用list()或类似方法实现左手赋值,同时保留除第一个参数以外的所有其他参数的数组

Php 使用list()或类似方法实现左手赋值,同时保留除第一个参数以外的所有其他参数的数组,php,arrays,split,Php,Arrays,Split,我知道,标题并没有泄露。如果有一个解决办法,它可能涉及一些体面的诡计 形势 我将通过代码进行解释: $str = 'all.your.base'; list($a, $b, $c) = explode('.', $str); $a,$b和$c将相应地设置 然而,我想要实现的是: $str = 'all.your.base'; list($a, $rest) = explode('.', $str); 而之后,$a应该包含'all',而$rest应该是这样一个数组:['your','base'

我知道,标题并没有泄露。如果有一个解决办法,它可能涉及一些体面的诡计

形势

我将通过代码进行解释:

$str = 'all.your.base';
list($a, $b, $c) = explode('.', $str);
$a
$b
$c
将相应地设置

然而,我想要实现的是:

$str = 'all.your.base';
list($a, $rest) = explode('.', $str);
而之后,
$a
应该包含
'all'
,而
$rest
应该是这样一个数组:
['your','base']


显然,这可以通过其他方式轻松实现,但当我编写了几行代码以达到目的时,我想知道手头是否有一种解决方案,例如
list()
,可能我不知道,它可以通过一些技巧在更短的时间内提供所需的结果,更快更整洁的方式?

使用第三个参数来分解


很不错的!我不知道
explode()
愿意接受第三个参数!令人惊叹的。非常感谢。你有没有看到一种简单快捷的方法来反转它,使一个变量得到被拆分字符串的最后一个分量的值,另一个变量变成一个包含所有先前分量的数组(但按原来的顺序)?@SquareCat啊,我明白了。对不起,我没有看错你的问题。不,原来的问题回答对了。下面是后续内容:@SquareCat好吧,我可以发誓您最初的查询是
$rest
是一个带有
“your.base”
的字符串,但这不是您的问题所在
$str = 'all.your.base';
list($a, $rest) = explode('.', $str, 2);