我从ajax获取了字符串,并在url中将字符串传递为1,2,3,4,5,6
使用爆炸功能后,即$explode_id = explode(',', $request->data);
我得到的输出为[“ 1”,“ 2”,“ 3”,“ 4”,“ 5”,“ 6”]
但我希望数据为:[1,2,3,4,5,6]
我如何得到它?而且它不应该像[“ 1,2,3,4,5,6”],因为我想比较以下数据:
$product_id = Product::where('name', 'like','%'.$main.'%')->where('id', $explode_id)->pluck('id');
Run Code Online (Sandbox Code Playgroud)
我在这里得到了答案。正在像URL中传递我要匹配的ID
$("input[type='checkbox']").click(function() {
if ($(this).is(':checked')) {
var days = $(this).val();
$.ajax({
type: "get",
url: '/getcreatedat',
data: { 'days': days },
success: successFunc,
error: errorFunc
});
function successFunc(data, status) {
var pageURL = $(location).attr("href");
window.location.href = pageURL+ '/' +data;
}
function errorFunc(xhr, error) {
console.log(error);
}
}
});
Run Code Online (Sandbox Code Playgroud)
下次我单击该功能时:url传递id的时间翻倍
@Kayal使用带有inval的array_map()进行尝试,如下所示:
<?php
$explode_id = array_map('intval', explode(',', $request->data));
Run Code Online (Sandbox Code Playgroud)
你可以的json_decode。
$explode_id = json_decode($request->data, true);
Run Code Online (Sandbox Code Playgroud)
另外,如果您想做一个IN()条件,可以使用:
->whereIn('id', $explode_id);
Run Code Online (Sandbox Code Playgroud)