2015-11-10 87 views
1

我不确定这是否可行,或者在代码中它有一个更大的问题,但我有一个用户从无限量选择一些值的网页。因此,例如,从我的表单中选择a1和b2。爆炸一个只能有一个值的数组

形式然后组合它们,所以它们变成这样: A1 B1或A1 B1 D1 E1作为另一示例。然后我将使用爆炸函数将这些值分开。这里有一个例子fulll

$v1 = a1**b1 
$v2 = explode("**", $v1); 

现在,如果用户只能选择一个值时,爆炸似乎没有工作,我不明白为$ V2的值。 EG

$v1 = a1 
$v2 = explode("**", $v1); 

有没有办法让我这个工作?我不知道为什么我甚至没有在第二个例子中得到一个值,只是想知道它是否有爆炸的限制或者它可能是别的什么。

预先感谢您的帮助或指导。

伊恩

+0

您是否希望'$ v2'始终等于一个数组,即使只有一个结果? – Chris

+2

爆炸将仍然有效,它只会返回一个单一元素的数组 - https://3v4l.org/HGlVB –

+0

不正确。爆炸将返回一个空的数组集... – Chris

回答

2

对不起,不知道实际的问题在这里...

第一:

<?php 
var_dump(explode('**','A')); 

这清楚地表明,explode()呼叫正常工作,输出:

array(1) { 
    [0] => 
    string(1) "A" 
} 

第二个:

如果我得到了正确的答案,那么您从客户端表单中获取数据,您需要花费精力创建一个字符串,然后将其转换为服务器端的数组来处理它? 为什么?简单地把它交给一个数组,一切都很好:

您可以简单地用一个符号像myvalue[]在客户端和表单提交将导致数组$_POST['myvalue']你可以像使用任何服务器端得到准备其他数组无需首先爆炸。

对于ajax请求,这是更容易,因为你那么通常会使用JSON为您POST请求传输格式原生支持的阵列。