我在angularjs中有一个数组,如下所示。
$scope.order.qty='20';
$scope.order.adress='Bekasi';
$scope.order.city='Bekasi';
此数组可以使用此代码发布
$http({
method : 'POST',
url : '<?php echo base_url(); ?>add_order',
data : $scope.order,
headers : {'Content-Type': 'application/x-www-form-urlencoded'}
})
我可以用
获取所有变量$_POST = json_decode(file_get_contents('php://input'), true);
$_POST['qty'];
$_POST['address'];
$_POST['city'];
但我很困惑,如果数组像这样的多维:
$scope.items[1].kode_produk='PR_1';
$scope.items[2].kode_produk='PR_2';
$scope.items[3].kode_produk='PR_3';
如何从这样的多维数组中发布和获取变量?
答案 0 :(得分:1)
您可以像这样传递数组:
$http({
method : 'POST',
data : { items: $scope.items }
...
})
获取数据:
$_POST = json_decode(file_get_contents('php://input'), true);
$items = $_POST['items'];
答案 1 :(得分:1)
如果您发送$input = json_decode(...)
:
array (size=3)
0 =>
object(stdClass)[1]
public 'kode_produk' => string 'PR_1' (length=4)
1 =>
object(stdClass)[2]
public 'kode_produk' => string 'PR_2' (length=4)
2 =>
object(stdClass)[3]
public 'kode_produk' => string 'PR_3' (length=4)
在foreach($input as $item)
{
echo $item->kode_produk;
}
之后对这个php数组产生了什么结果:
{{1}}
你有一个对象数组,而不是多维数组!
您可以迭代以下项目:
{{1}}
答案 2 :(得分:0)
是一种方式
JavaScript中的发送数据$ scope.items,例如:
$http({
method : 'POST',
url : '<?php echo base_url(); ?>add_order',
data : $scope.items,
headers : {'Content-Type': 'application/x-www-form-urlencoded'}
})
并在网站上编写PHP代码:
$_POST = json_decode(file_get_contents('php://input'), true);
var_dump($_POST); die();
并分析数据结构。