如何使用数组和内爆来使我的查询像这样?

问题描述 投票:0回答:3
$data = array('Cardinal', 'Tom B.','[email protected]');
$stmt = mysqli_prepare("INSERT INTO $table  (username,password,email) VALUES ($data)");
php mysql prepared-statement sql-insert
3个回答
0
投票

希望这对您有帮助。在这里,我们在

$data
数组的字符串的开头和结尾附加单引号,然后使用
,

对该数组进行内爆
<?php

$data = array('Cardinal', 'Tom B.','[email protected]');
//adding single quotes
$data=array_map(function($value){
    return $value="'$value'";
}, $data);
//imploding array with ,
$data=  implode(",", $data);
echo $query="INSERT INTO $table  (username,password,email) VALUES ($data)";
$stmt = mysqli_prepare($query);

输出:

of echo $query;

INSERT INTO   (username,password,email) VALUES ('Cardinal','Tom B.','[email protected]')

0
投票

我认为最简单的方法是这样的:

$data = implode("','", ['Cardinal', 'Tom B.', '[email protected]']);
$stmt = mysqli_prepare(
    "INSERT INTO $table (username,password,email) VALUES ('$data')"
);

0
投票

您可以简单地使用

"INSERT INTO $table (username,password,email) VALUES ('$data[0]','$data[1]','$data[2]')"
© www.soinside.com 2019 - 2024. All rights reserved.