Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/230.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
Php 在终端中使用cURL发布数组_Php_Arrays_Database_Curl_Terminal - Fatal编程技术网

Php 在终端中使用cURL发布数组

Php 在终端中使用cURL发布数组,php,arrays,database,curl,terminal,Php,Arrays,Database,Curl,Terminal,我正在尝试为一个应用程序构建一个Web服务,因此数据存储在我拥有的一个在线数据库中。我目前正在构建php文档,我很好奇如何在终端Mac应用程序中使用cURL发布array 您知道,应用程序将向Web服务发送一个由字符串组成的数组。例如像这样的东西[“字符串1”、“字符串2”、“字符串3”]。 但是为了测试将这些值插入数据库的代码是否有效,我需要以某种方式将这些数据传递给Web服务。到目前为止,我一直在使用Mac终端应用程序,并且像这样发布curl-F“user\u id=1”localhost/

我正在尝试为一个应用程序构建一个Web服务,因此数据存储在我拥有的一个在线数据库中。我目前正在构建php文档,我很好奇如何在终端Mac应用程序中使用
cURL
发布
array

您知道,应用程序将向Web服务发送一个由字符串组成的数组。例如像这样的东西
[“字符串1”、“字符串2”、“字符串3”]
。 但是为了测试将这些值插入数据库的代码是否有效,我需要以某种方式将这些数据传递给Web服务。到目前为止,我一直在使用Mac终端应用程序,并且像这样发布
curl-F“user\u id=1”localhost/test/webservice.php“
,但我不知道如何传递数组

到目前为止,我得到的是:

curl -F "user_id=1" -F "title=Random title 123" -F "num_items=2" -F "items[]=[Item 1, Item 2]" localhost/test/webservice.php
但是我不认为这是传递数组的正确方法,因为我相信我的php文档中的代码是正确的,但是存储在数据库中的值实际上是单词数组。我相信
项[]
是启动它的正确方法,但我不太确定
=
-符号后面会出现什么

有人知道正确的方法吗

如果这恰好是正确的,那么我在数组中存储数据的方式就有问题。我使用的是
stmt
bind_param()
关键字如下:

$items = $_POST["items"]; // This is the array

$stmt = $this->db->prepare('INSERT INTO items (item_id, user_id, title) VALUES (?, ?, ?)');
$stmt->bind_param('iis', $item_id, $user_id, $items);
$stmt->execute();
$stmt->close();
我试图实现的基本目标是用一条insert语句将数组中的所有值发布到数据库中。如果这是错误的,正确的方法是什么

感谢您的帮助


谢谢。

首先确保您要执行
-F
(对于
多部分/表单数据
)或
-d
(对于
应用程序/x-www-form-urlcoded
)。在这两种情况下,您应该如何传递数组:

-F "items[]=Item 1" -F "items[]=Item 2"
或者使用
-d

-d "items[]=Item 1" -d "items[]=Item 2"
您的服务器将按以下格式接收数据:

[items] => Array
    (
        [0] => Item 1
        [1] => Item 2
    )

非常感谢!这正是我想要的!:)这同样有效:
-d“items[]=Item 1&items[]=Item 2”