如何从php中生成的数组中获取javascript中的长度?

如何从php中生成的数组中获取javascript中的长度?,javascript,php,jquery,Javascript,Php,Jquery,我使用jQuery调用一个php函数并返回一个数组。以下是php代码: $users = array(); $user = array(); $user["fname"] = "Juan"; $user["lname"] = "Perez"; $user["uname"] = "jperez"; $user["passwd"] = "passwd1234"; $user["rights"] = array( "mod_own" => true, "vi

我使用jQuery调用一个php函数并返回一个数组。以下是php代码:

  $users = array();
  $user = array();

  $user["fname"] = "Juan";
  $user["lname"] = "Perez";
  $user["uname"] = "jperez";
  $user["passwd"] = "passwd1234";
  $user["rights"] = array(
  "mod_own" => true,
  "view_all" => false,
  "mod_all" => true,
  "mod_proj" => false,
  "mod_users" => true
  ); 

  $users[1] = $user;

  $user["fname"] = "Pedro";
  $user["lname"] = "Rodriquez";
  $user["uname"] = "pedror";
  $user["passwd"] = "passwd456+";
  $user["rights"] = array(
  "mod_own" => false,
  "view_all" => true,
  "mod_all" => false,
  "mod_proj" => true,
  "mod_users" => false
  ); 

  $users[1] = $user;
  $ret["users"] = $users;
  $ret["error"] = "";

  echo json_encode($ret);
这只是我真正想要返回的测试代码。问题是我知道用户在这里有一个长度2,但在实际应用中我不知道。我想检查一下它的长度。在调用此函数的javascript中,返回的对象是call obj。如果我说

对象用户[1]['fname']

我得到了正确的名字和一切。我不知道如何检查用户的长度。我试过obj.users.length,但不起作用

我怎么检查

编辑:

要查看长度,我使用了以下代码:

document.getElementById("debug").innerHTML="N de users is " + obj.users.length;

我得到“N de users is undefined”

您在未设置
$users[0]
的情况下设置了两次
$users[1]
。这将输出一个没有
length
属性的。不要直接指定索引,只需将内容推入
$users
$users[]=$user

“它不工作”:它是否会给出一个错误,因为它应该工作?
obj.users.length
应该工作。请显示什么
console.log(obj)显示在控制台中我对这个很陌生。我在文本编辑器中编写代码,并在网页上试用。如何检查控制台输出?至于它为什么不工作,这是因为当我试图打印它的值时,打印的值是未定义的。我将编辑这个问题。您的JavaScript是否运行JSON.parse?(你能发布JavaScript吗?@AndréDion如果你混淆了php和js语法,php将是
array\u push($users,$user)
$users[]=$user我不知道您添加用户的语法(我以前使用array\u push($users,$user);我又使用了它),但这解决了它!!!!非常感谢你。现在obj.users.length起作用了!!我的语法是首选,因为它不会带来调用函数的开销。有关更多信息,请参阅。