无法使用AngularJS中的$ http POST方法在数组键中发送特殊符号

时间:2016-05-28 07:40:22

标签: php arrays angularjs

无法使用AngularJS中的$ http POST方法在数组键中发送特殊符号

这是我的AngularJS代码:

var httpHeader = {
    headers: { 'Content-Type': "application/x-www-form-urlencoded;" }
};
var postData = { 'user_id !=': 1 };
$http.post("http://localhost/api/view/country", $httpParamSerializer(postData), httpHeader)
.then(function (response) {
    var data = response.data;
});
当我这样做时,在PHP中

var_dump($_POST);

它显示:

array(1) {
  [0]=>
  string(1) "1"
}

应该是这样的:

array(1) {
  [user_id !=]=>
  string(1) "1"
}

当我发送它而没有“!=”时它工作正常。我应该怎么做才能解决这个问题?感谢

2 个答案:

答案 0 :(得分:0)

如果您使用关联数组,并且在您的情况下将密钥传递为String,则它将正常工作 我不知道为什么会创造

$arr[0] = 1;

Working demo

答案 1 :(得分:0)

<?php

$arr["user_id !="] = 1;

// Print all the elements of $arr
print_r($arr);

echo '<br/>'.$arr["user_id !="] ;

运行上面的代码。我认为“user_id!=”不是索引名称的问题,因为它工作正常。