我在Phoronix Test Suite中找到了这段代码:
$os_packages_to_install = explode(' ', implode(' ', $os_packages_to_install));
我以前见过它,但不知道它有什么作用。它是做什么的?
我在Phoronix Test Suite中找到了这段代码:
$os_packages_to_install = explode(' ', implode(' ', $os_packages_to_install));
我以前见过它,但不知道它有什么作用。它是做什么的?
它将返回一个数组,但与$os_packages_to_install
的区别在于,如果$os_packages_to_install
的值包含空格,则也会被分割。
因此:
["hjk jklj","jmmj","hl mh","hlm"]
implode的作用:
"hjk jklj jmmj hl mh hlm
["hjk","jklj","jmmj","hl","mh","hlm"]
$os_packages_to_install = array(
'package1',
'package2 package3'
);
$os_packages_to_install = array(
'package1',
'package2',
'package3'
);
这是一个关于Phoronix测试套件的链接,可以在此处下载该软件包。如果输入的数组是关联数组,它可能会返回:
$os_packages_to_install = array('key'=>'val1','val2','val3');
var_dump($os_packages_to_install);
var_dump(explode(' ', implode(' ', $os_packages_to_install)));
输出为:
array(3) { ["key"]=> string(4) "val1" [0]=> string(4) "val2" [1]=> string(4) "val3" }
array(3) { [0]=> string(4) "val1" [1]=> string(4) "val2" [2]=> string(4) "val3" }
是的,如果数组$os_packages_to_install
中的字符串包含空格字符。
如果字符串包含空格,例如:
$str[0] = "abcd bce"; $str[1] = "bcde sdf";
如果执行您的命令,则会将其拆分为具有4个记录的数组,而不是拆分为2个。