如何在单独的变量中获取所有可能的变量值.....用逗号分隔
$bin="1,2,3,4,5,6,ABC,AAA,77,00,11,AS,Code";
如何获得所有可能的变量。
$NN01="1";
$NN02="2";
$NN03="3";
$NN04="4";
$NN05="5";
$NN06="6";
$NN07="ABC";
$NN07="AAA";
$NN08="77";
$NN09="00";
$NN10="11";
$NN11="AS";
$NN12="Code";
除了逗号之外,上面的sting可以用任何操作符分隔,谢谢你的帮助......
答案 0 :(得分:6)
你将无法做到这一点,但你可以将它们分解为阵列。
$bin="1,2,3,4,5,6,ABC,AAA,77,00,11,AS,Code";
// any delimiter in place of ','
$arr = explode(',',$bin);
echo $arr[0];
编辑:好的,这是可能的。我错误地说你将无法做到这一点。
答案 1 :(得分:3)
$bin = "1,2,3,4,5,6,ABC,AAA,77,00,11,AS,Code";
list ($NN01,$NN02,$NN03,$NN04,$NN05,$NN06,$NN07,$NN07,$NN08,$NN09,$NN10,$NN11,$NN12) = $bin;
或完全动态的东西
$i = 0;
foreach ($bin as $val) {
$temp = 'NN' . str_pad(++$i, 2, '0');
$$temp = $val;
}
答案 2 :(得分:2)
您可以使用explode
函数将初始值转换为数组:
$bin="1,2,3,4,5,6,ABC,AAA,77,00,11,AS,Code";
$array_of_values = explode(',' $bin);
这将为您提供一个数字索引数组,如下所示:
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
[5] => 6
[6] => ABC
[7] => AAA
[8] => 77
[9] => 00
[10] => 11
[11] => AS
[12] => Code
)
您可以使用它并按索引访问各个值:
echo $array_of_values[0]; // 1
详细了解数组:http://php.net/manual/en/language.types.array.php
从那里,如果你想将值设置为变量,你可以使用这个循环,它使用“变量变量”:
$bin= "1,2,3,4,5,6,ABC,AAA,77,00,11,AS,Code";
$array_of_values = explode(',', $bin);
$vn = 'NN';
foreach ($array_of_values as $k=>$v) {
${$vn.$k} = $v;
}
echo 'NN1:'.$NN1; // NN1:2
echo 'NN2:'.$NN2; // NN2:3
echo 'NN2:'.$NN3; // NN3:4
试一试:http://codepad.org/Ee8F9F18
<强>文档强>
答案 3 :(得分:2)
另一个想法是使用提取,并提供所需的前缀。
$bin="1,2,3,4,5,6,ABC,AAA,77,00,11,AS,Code";
这将为您提供$ NN_0 .. $ NN_11,其中'NN'是您选择的前缀。
extract( explode( ',', $bin ), EXTR_PREFIX_ALL, 'NN' );
答案 4 :(得分:1)