【发布时间】:2023-03-27 15:56:01
【问题描述】:
我的 Android Java 代码必须将一些数组和一些多维数组传递给 PHP 服务器。不幸的是,我没有访问 PHP 服务器的权限。
这是 PHP 服务器 API:
$result= array(
"username" => "admin",
"password" => "admin",
"hobbies" => array(
"1" => "science"
),
"skills" => array(
"1" => array(
"Boxing" => "Yes"
)
)
);
这是我的 Android Java 代码:
final String hobbies[] = {"science"};
final String skills[][] = {{"Boxing"},{"Yes"}};
@Override
protected Map<String, String> getParams() {
Map<String, String> jParams= new HashMap<String, String>();
JSONArray arrHobbies = new JSONArray();
JSONArray arrSkills = new JSONArray();
arrHobbies.put(hobbies[0]);
arrSkills.put(skills[0][0]);
jParams.put("username", "admin");
jParams.put("password", "admin");
jParams.put("hobbies",arrHobbies.toString();
jParams.put("skills",arrSkills.toString();
return jParams;
}};
然后,我使用此代码查看数据是如何发送的。
Log.d("Response : ", jParams.toString());
它在 Android 日志上显示:
{password=admin, username=admin, hobbies=["science"], skills=[["275]]}
更新 这是我调试代码时的哈希值:
0 = {java.util.HashMap$HashMapEntry@4884} "hobbies" -> "{"1":"1"}"
1 = {java.util.HashMap$HashMapEntry@4885} "password" -> "admin"
2 = {java.util.HashMap$HashMapEntry@4886} "username" -> "admin"
3 = {java.util.HashMap$HashMapEntry@4887} "skills" -> "{"1":{"Boxing":"Yes"}}"
我从未成功与 PHP Server API 通信。 请帮助我在哪里丢失或错误。
【问题讨论】:
-
它应该记录什么?因为那正是您正在创建的日志?我怀疑您不了解
skills[][]实际创建的内容
标签: php android arrays json multidimensional-array