Javascript 数组中的值不是字符串
我在php中设置了一些数组Javascript 数组中的值不是字符串,javascript,php,Javascript,Php,我在php中设置了一些数组 $usersPostsDates = array(); $usersPostsNations = array(); $userpostsIds = array(); if (!in_array($jikuDate, $usersPostsDates)) { array_push($usersPostsDates, $jikuDate); } if (!in_array($nation, $usersPostsNations)) { array_pus
$usersPostsDates = array();
$usersPostsNations = array();
$userpostsIds = array();
if (!in_array($jikuDate, $usersPostsDates)) {
array_push($usersPostsDates, $jikuDate);
}
if (!in_array($nation, $usersPostsNations)) {
array_push($usersPostsNations, $nation);
}
if (!in_array($idThisPost, $userpostsIds)) {
array_push($userpostsIds, $idThisPost);
}
然后在js中,我会:
var userDates = <?php echo json_encode($usersPostsDates); ?>;
var userNations = <?php echo json_encode($usersPostsNations); ?>;
var userIds = <?php echo json_encode($userpostsIds); ?>;
var i;
var a;
var b;
for (i = 0; i < userDates.length; ++i) {
$("#usp-custom-i"+i).attr("value", userDates[i]);
}
for (a = 0; a < userNations.length; ++a) {
$("#usp-custom-a"+a).attr("value", userNations[a]);
}
for (b = 0; b < userIds.length; ++b) {
$("#usp-custom-b"+b).attr("value", userIds[b]);
}
为什么var userIds=[152213260969];不是var userIds=[“15221”、“3260”、“969”]代码>
如果我这样做:var\u dump($userpostsIds)
我得到数组(1){[0]=>int(15221)}
数组(2){[0]=>int(15221)[1]=>int(3260)}
数组(3){[0]=>int(15221)[1]=>int(3260)[2]=>int(969)}因为您的数据是int,如int(15221)
中所示,如果您想在中将其转换为字符串
尝试执行以下操作:
array_push($userpostsIds, $idThisPost.'');
PHP上的$userpostsIds
中有什么?@DanielA.White用var\u dump
更新了这个问题,我想它只是来自您的DB列数据类型。尝试转换添加'
像数组推送($userpostsIds,$idThisPost')代码>@rob.m好的,我会把它作为答案发布
array_push($userpostsIds, $idThisPost.'');