如何在php中将json数组值声明为变量

Posted

技术标签:

【中文标题】如何在php中将json数组值声明为变量【英文标题】:how to declare json array value as a variable in php 【发布时间】:2021-12-27 11:23:07 【问题描述】:

我对 json 有疑问,我正在使用 json 数组从数据库中获取值!! IE: 更新:

$json=[];
$query="select * from json where id='".$id."'";
$run=mysqli_query(connection,$query);
$i=0;
while($exe=mysqli_fetch_array($run,MYSQLI_ASSOC)) 
    $json[$i]["name"]= $exe["name"];


注意:此代码在另一个页面(第 1 页)中,我通过另一个页面中的 ajax 调用获取值(第 2 页) 我需要在第 2 页中将 $json[$i]["name"]= $exe["name"]; 的值作为 $name 访问另一个功能 前任 : $query1= "select name from json1 where name='".$name.'""; 我不知道如何访问 json 数组中的值。请帮我解决这个疑问

【问题讨论】:

您的问题缺乏内容,请阅读this。然后编辑您的问题,让我们更清楚地为您提供帮助。 @PeriklisKakarakidis 我想你现在可以明白我想说的了! 警告:您对SQL Injections 持开放态度,应该使用参数化的prepared statements,而不是手动构建查询。它们由PDO 或MySQLi 提供。永远不要相信任何形式的输入!即使您的查询仅由受信任的用户执行,you are still in risk of corrupting your data。 Escaping is not enough! 如何使用参数化预处理语句? @Dharman 阅读***.com/questions/7537377/… 【参考方案1】:

第 1 页:

<?php 
$json=[]; 
$query="select * from json where id='".$id."'"; 
$run=mysqli_query(connection,$query); 
$i=0; 
while($exe=mysqli_fetch_array($run,MYSQLI_ASSOC)) 
    $json[$i]["name"]= $exe["name"];

echo json_encode($json);

我假设通过AJAX接收数据时会调用这个js函数:

function success(data_in_string) 
    var js_obj = JSON.parse(data_in_string);
    console.log(js_obj[0]["name"]);

【讨论】:

以上是关于如何在php中将json数组值声明为变量的主要内容,如果未能解决你的问题,请参考以下文章

如何在PHP中将对象转换为特定格式的数组

如何在 php 中将 Json 转换为 CSV

如何在 PHP 中将非 json 字符串转换为有效的 json 字符串

如何在 symfony2 中将 json 转换为 php 对象?

获取 JSON 值到数组

在 PHP 中将 JSON 转换为 XML,但在 XML 中为 JSON 数组创建一个容器元素