jquery检查来自php数组的inArray

时间:2016-09-07 21:51:27

标签: javascript php jquery arrays

我在php中有一个数组,我就像这样进入我的jquery:

var hide = <?php echo json_encode($user_dashboard); ?>;

这给了我:

var hide = "a:2:{i:0;s:18:\"dashboard-progress\";i:1;s:19:\"dashboard-bookmarks\";}";

我有一些代码在数组只是一个字符串时工作正常,但现在它没有比较元素:

if (  $.inArray( $this.attr('id') , hide) !=  -1 )

基本上只是测试一组元素ID对阵列。如果数组包含ID然后执行某些操作。当阵列只是:

var hide = "dashboard-progress", "dashboard-bookmarks";

工作得很好。但现在我必须将数组存储在php和MySQL中。

var_dump($user_dashboard)包含string(67) "a:2:{i:0;s:18:"dashboard-progress";i:1;s:19:"dashboard-bookmarks";}"

使用php serialize从正在放入MySQL字段的数组中提取数据。

1 个答案:

答案 0 :(得分:1)

是的$user_dashboard中的字符串是一个序列化数组,所以请尝试使用此代码,首先将该字符串转换为数组,然后将其转换为JSON字符串

var hide = <?php echo json_encode(unserialize($user_dashboard)); ?>;