【问题标题】:JSON substitution with PHP用 PHP 替换 JSON
【发布时间】:2017-05-19 06:26:43
【问题描述】:

我正在尝试使用表单传递的变量填充一些 json(弹性搜索查询),但它不起作用,因为我似乎无法保留双引号。这是我要重现的内容 - 假设表单传递了“smith”:

 $plast_name = "{$_GET["lname"]}";

 $json = '{
         "query" : {
             "match" : {
                 "last_name" : "smith"
                 }
         } }';

...这是我最近的一次尝试:

 $plast_name = "{$_GET["lname"]}";

 $json = '{
        "query" : {
             "match" : {
                 "last_name" : ' . "$plast_name" . '
                 }
         } }';

【问题讨论】:

  • 您的第一行正在杀死脚本:$plast_name = $_GET["lname"];

标签: php json elasticsearch


【解决方案1】:

将 $_GET 值赋给一个数组,然后使用 json_encode()。

<?php
$value['last_name'] =$_GET['lname'];
echo json_encode($value);
?>

【讨论】:

    【解决方案2】:

    只需在数组上使用 json_encode(),在 json 字符串上使用 json_decode()。无需手动创建json。

    【讨论】:

    • 感谢大家的帮助!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-16
    • 2012-01-11
    • 1970-01-01
    • 2014-12-17
    • 1970-01-01
    相关资源
    最近更新 更多