Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/234.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.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
Codeigniter和PHP。使用POST访问阵列_Php_Arrays_Codeigniter - Fatal编程技术网

Codeigniter和PHP。使用POST访问阵列

Codeigniter和PHP。使用POST访问阵列,php,arrays,codeigniter,Php,Arrays,Codeigniter,我正在使用Codeigniter和Phils RESTserver构建一个API,并尝试使用POST请求向API发送一个数组 当我发布此消息时: query=("email@example.com","anna@nicole.com") 我可以这样访问它: $this->post('query'); 这将产生: ("email@example.com","anna@nicole.com") 如何在PHP中循环浏览这些电子邮件地址? 有人有别的主意吗 感谢所有的投入 如果您控制POST

我正在使用Codeigniter和Phils RESTserver构建一个API,并尝试使用POST请求向API发送一个数组

当我发布此消息时:

query=("email@example.com","anna@nicole.com")
我可以这样访问它:

$this->post('query');
这将产生:

("email@example.com","anna@nicole.com")
如何在PHP中循环浏览这些电子邮件地址? 有人有别的主意吗


感谢所有的投入

如果您控制POST请求,那么您应该向PHP发布一个数组,而不是一个分隔列表,当服务器接收到请求时,该列表将自动创建一个可供使用的数组。这就是J0HN所说的使用方括号而不是括号的意思

但是,这取决于您将请求发送到服务器的方式,以确定向PHP发送数组的正确方式。您可能需要:

  • 查询=[”one@example.com", "two@example.com“]
  • 查询[]=[”one@example.com", "two@example.com“]
  • 或其他变体
  • 由于没有详细说明如何向服务器发出请求,因此无法确定发布阵列的正确方式

    另一方面,如果由于某种原因无法发布数组,则始终可以发送JSON编码的字符串并轻松解码:

    // Assuming $this->post('query') = json_encode( array( "one@example.com", "two@example.com"));    
    $emails = json_decode( $this->post('query')); // Array of emails
    

    这样行吗<代码>分解(“,”,str_替换(数组(“(“,”),“$emails))完美!谢谢让它成为一个真实的答案,我会给你们分数并选择最佳答案。但这不是一个答案,只是一个评论。此外,也许有更好的方法来改进您想要的内容。也许最好使用方括号,如下所示:
    [”email@example.com","anna@nicole.com“]
    。这样,您将在
    $This->post('query')
    中拥有数组。但由于您尚未提供用于执行post的代码,因此很难判断它是否有效。如果我使用此[“email@example.com","anna@nicole.com“]然后如何在服务器端循环使用它?为什么这样更好?我正在使用Firefox扩展RestClient发布帖子。