为了账号安全,请及时绑定邮箱和手机立即绑定

如何在 php 中将变量数组单独插入数据库?

如何在 php 中将变量数组单独插入数据库?

呼啦一阵风 2024-01-22 16:54:27
我如何将数组单独插入数据库,它显示错误。我想一次将它们全部插入...有时数组可能超过 3、5 或 10。$roll_num = '111,222,333';$rollnum = explode(",",$roll_num);$sql ="INSERT INTO eyfstb(specialnum)  VALUES('$rollnum[]')";if($db->query($sql)== TRUE){    echo "true";}else{     echo "false";}
查看完整描述

4 回答

?
慕田峪9158850

TA贡献1794条经验 获得超7个赞

您可以将其动态插入到您的中Database,这将解决您的问题。:D


  $roll_num = '111,222,333';

  $rollnum_arr = explode(",",$roll_num);


  for($x = 0; $x < count($rollnum_arr); $x++){

      $sql ="INSERT INTO eyfstb(specialnum)  VALUES(".$rollnum_arr[$x].")";

  }


  if($db->query($sql) == TRUE){

      echo "true";

  }else{

      echo "false";

  } 


查看完整回答
反对 回复 2024-01-22
?
一只甜甜圈

TA贡献1836条经验 获得超5个赞

首先,您的 $roll_num 变量不是数组。爆炸函数将按字符串分割您的字符串,如下所示: https: //www.php.net/manual/en/function.explode.php

为此,您可以构建您的数组,其中包含您的值,例如:

$roll_num = array('111', '222','333');

并通过循环插入:

for ($i = 0; $i < count($roll_num); $i++) {
    $sql = "INSERT INTO eyfstb(specialnum)  VALUES(" . $roll_num[$i] . ")";    
    $db->query($sql);    
    $db->execute();

}

它应该有效:)


查看完整回答
反对 回复 2024-01-22
?
ITMISS

TA贡献1871条经验 获得超8个赞

据我了解,您想为每个数组单元格插入一个新行。为此,我建议:


$roll_num = '111,222,333';

$rollnum = explode(",", $roll_num);


$sql = "INSERT INTO eyfstb(specialnum) VALUES('" . implode("'),('", $rollnum) . "')";

这将产生以下 SQL:


INSERT INTO eyfstb(specialnum) VALUES('111'),('222'),('333')

并且比每次迭代循环和插入更有效。


查看完整回答
反对 回复 2024-01-22
?
Qyouu

TA贡献1786条经验 获得超11个赞

爆炸函数将您的数组转换为多个索引变量,因此关于您的问题,它应该是:


$roll_num = '111,222,333';

$rollnum = explode(",",$roll_num);


$sql ="INSERT INTO eyfstb(specialnum)  VALUES('$rollnum[0]')";


if($db->query($sql)== TRUE){

    echo "true";

}else{

     echo "false";

}

如果您想插入所有这些,您可以将其作为 JSON 存储在表中,或者创建其他列。


查看完整回答
反对 回复 2024-01-22
  • 4 回答
  • 0 关注
  • 126 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信