2010-06-22 32 views
3

如何在PHP中通过url发送数组?如何通过PHP中的URL发送数组值?

我的产品ID,我想通过URL来利用这些ID的数组,因为这是自从需要它在我工作中,我该怎么办呢?

一般osCommerce要求单个产品的插入,这反过来又给了我一个产品ID,我将它传入网址并在购物车中显示此添加的产品,但现在我已将多个产品添加到第一个不同产生的产品ID,我必须展示这些产品,他们将显示在genaral以同样的方式,为此,我将在这里需要所有这些生成的ID在URL

+0

这真的取决于你需要用它做什么。需要更多信息才能正确回答您的问题。 – 2010-06-22 12:36:56

回答

9

你找http_build_query()。从php.net

实施例:

$data = array('foo'=>'bar', 
       'baz'=>'boom', 
       'cow'=>'milk', 
       'php'=>'hypertext processor'); 

echo http_build_query($data); 
// foo=bar&baz=boom&cow=milk&php=hypertext+processor 

echo http_build_query($data, '', '&'); 
// foo=bar&baz=boom&cow=milk&php=hypertext+processor 
1

您可以serialize()它或把它作为?a[]=1&a[]=val2&someOtherArg=val页面。这会给$_GET阵列,如:

array(
    'a' => array(
     0 => '1', 
     1 => 'val2', 
    ), 
    'someOtherArg' => 'val' 
) 

待办事项,但是,你应该保持低于〜2K字符整个查询。 (more

7

?ARR [] = ABC & ARR [] = PQR & ARR [] = XYZ & ARR [] = XXX

0

如果你是POST-ING的数据,然后将其命名与PHP数组的领域风格的语法:

<input type="text" name="myArray[]" value="A"> 
<input type="text" name="myArray[]" value="B"> 
<input type="text" name="myArray[]" value="C"> 

如果你想传递一个GET请求的数据,你可以单独的数据,并采用分体式它的服务器端爆炸:

page.php?myData=A,B,C,D 

...

$myArray = explode(',', $_POST['myData']); 
0

如果已经有在阵列中的产品ID,则可以使用http_build_query()功能,这将在阵列编码像这样:

http://www.example.com/?pid[]=1&pid[]=2&pid[]=3 ...

希望有帮助。

3

以及我要做的是json_encodephp json)该数组并将其分配给php中的变量。那么你可以通过urlencode这个变量通过url发送它。另一方面,你可以json_decode。如果你不知道它,请查找json。尽管它非常强大和有用。