如果是PHP中的数组,如何获取$u POST的值?
假设我有一系列电子邮件如果是PHP中的数组,如何获取$u POST的值?,php,Php,假设我有一系列电子邮件 ['email1', 'email2'...'email(n)']; 提交一份表格 如何将这些值存储到变量中, 即 但这不起作用,因为它将值($emails)视为字符串而不是数组 我也试过了 $emailsArray = explode(' ', $emails); 虽然$emailsArray是数组类型,但由于将所有元素分组为单个字符串,因此失败 请记住,电子邮件是动态的,无法预测其长度 我不是100%清楚如何发送数组,但是如果使用var\u dump($\u P
['email1', 'email2'...'email(n)'];
提交一份表格
如何将这些值存储到变量中,
即
但这不起作用,因为它将值($emails)视为字符串而不是数组
我也试过了
$emailsArray = explode(' ', $emails);
虽然$emailsArray是数组类型,但由于将所有元素分组为单个字符串,因此失败
请记住,电子邮件是动态的,无法预测其长度 我不是100%清楚如何发送数组,但是如果使用
var\u dump($\u POST)
您应该能够看到$\u POST
的内容。
输出应如下所示:
array(3) {
[1]=>
string(6) "email1"
[2]=>
string(6) "email2"
[3]=>
string(6) "email3"
}
$emails = json_decode($_POST['emails']);
要使用的键位于[]
中。因此,在本例中,您将使用$\u POST[1]
获取“email1”
。如果您不理解,可以发送var\u dump($\u POST)
的输出,或者发送从中发送数组的代码
编辑:Mehdi刚才问了同样的问题,显然你的问题是如何将字符串转换为数组
也许在某个地方已经有了答案,但这里有一个方法:
$array = explode(',', trim($_POST['emails'], "[]"));
它基本上删除了[]
方括号(使用修剪)
,然后将字符串切成由逗号分隔的几段(使用分解
)。您仍然需要处理”
引号,但是根据我给您的信息,您应该能够自己解决如何处理
EDIT2:或者你可以像Mehdi的答案一样使用
json\u decode
。如果你收到一个json字符串,你需要这样解码:
array(3) {
[1]=>
string(6) "email1"
[2]=>
string(6) "email2"
[3]=>
string(6) "email3"
}
$emails = json_decode($_POST['emails']);
以下是。该数组是如何从表单提交的?我目前正在构建一个API,用于向每封电子邮件发送单独的电子邮件,我正在使用Jquery$.post API将数组发送到APICan,您可以通过编辑字符串(57)发布问题中的
var\u dump($\u post)的输出。
['email1@gmail.com','email@gmail.com','email3@gmail.com']"你有太多未解决的问题,IMHO。Stack是双向的。解决方案给=在街道两旁都有很好的表现。接受解决问题的人,应该被标记为已解决。这很有魅力,出于某些原因,很多人否决了这个问题,但相信我,你为我节省了很多时间。谢谢Eagain@CWilliams我注意到很多未关闭的问题,请在找到正确答案后关闭一个问题,