我在数据库中有两个表function getElementByXpath(path) { return document.evaluate(path, document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null).singleNodeValue; }
console.log( getElementByXpath("//div[@id='successMessageGrid']//div").innerText );
和<div id="successMessageGrid" class="ng-scope" style="display: none;">
<div class="alert alert-success media fade in ng-binding">
Capability updated successfully.
<button class="close" type="button" ngclick="RemoveSuccessMessage()">
<i class="fa fa-times-circle"></i></button>
</div>
</div>
。
package
的字段categories
包含格式为package
的数据,并以复选框的形式显示category_id
数据。
现在,我希望来自["1","11"]
的所有数据,其中categories
等于package
category_id
。
这是我的代码:
categories
我遇到以下错误:
SQLSTATE [42000]:语法错误或访问冲突:1305 FUNCTION
pre.JSON_CONTAINS不存在(SQL:从“包”中选择*,其中
JSON_CONTAINS(category_id,'[“ 11”]'))
答案 0 :(得分:0)
有一个laravel方法可以做到这一点,更多细节here
所以请尝试:
Packages::whereJsonContains('category_id', '11')->get();
如果您的mysql版本不支持json_contains
,并且您不能升级它,请尝试以下查询:
Packages::where('category_id', 'like', '%"11"%');
答案 1 :(得分:0)
PHP具有内置方法json_encode(),可轻松将数组编码为JSON字符串格式。我们可以将其实现为: 我们也可以在laravel中使用它
$ array = array('laptop','earphones','mouse'); 返回json_encode($ array);
但是,较新版本的Laravel也有自己的json()方法,该方法会自动设置相关的Content-Type并编码JSON数据:
$ array = array('laptop','earphones','mouse'); 返回response()-> json($ array);
答案 2 :(得分:0)
示例JSON:
[ { “ id”:11 “ first_name”:“安东尼”, “ last_name”:“罗斯”, “英语语言”, “1级 } ]
如果json中有多个值,则可以尝试执行类似的循环
foreach($target as $target_result){
echo $target_result->id;
}
如果只有一条记录,请尝试
$target = Var::where('first_name', '=', $request->input('jsonArr'))->first();
return $jsonArr->id