我从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');
我在这里得到了答案。 我传递了我想在网址中匹配的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);
}
}
});
下次点击该功能时: url传递id的时间加倍
答案 0 :(得分:7)
@Kayal尝试使用带有inval的array_map(),如下所示:
<?php
$explode_id = array_map('intval', explode(',', $request->data));
答案 1 :(得分:3)
你可以$explode_id = json_decode($request->data, true);
。
IN()
此外,如果您尝试执行->whereIn('id', $explode_id);
条件,则可以使用:
<?php
$connect = mysqli_connect("localhost", "root", "","user");
$data = json_decode(file_get_contents("php://input"));
$first_name = mysqli_real_escape_string($connect, $data->firstname);
$last_name = mysqli_real_escape_string($connect, $data->lastname);
$user_name = mysqli_real_escape_string($connect, $data->username);
$emailid = mysqli_real_escape_string($connect,$data->emailid);
$password = mysqli_real_escape_string($connect,$data->password);
$mobile = mysqli_real_escape_string($connect,$data->mobile);
$query = "INSERT INTO register(fname,lname,uname,email,pass,mobile)
VALUES ('$first_name','$last_name','$user_name','$emailid','$password','$mobile')";
$result = mysqli_query($connect, $query) ;
if($result == TRUE)
{
echo "Data Inserted...";
}
else
{
echo 'Error';
}
答案 2 :(得分:1)
我会这样做,试试这个......
$a = "1,2,3,4,5";
$b= preg_split("/[,]/",$a);
print_r($b);
答案 3 :(得分:0)
您可以使用str_replace('"','',$string[$i]);
在每个数组元素的for循环中,否则你可以将其作为
$intVal = (int)$string[$i];
在一个for循环中