正文
php往数据库插入数组 php数组存入数据库
小程序:扫一扫查出行
【扫一扫了解最新限行尾号】
复制小程序
【扫一扫了解最新限行尾号】
复制小程序
php数组插入数据库这个功能该怎么实现
把数组转成json或其他字符串在写入数据库,不转换字符串无法写入或自由Array,我是没试过,反正我知道是无法写入,我都是转成json后在写入。
?php
$array=array(
"data1"="data1",
"data2"=array(
"data22"="data22",
"data222"="data222"
),
"data3"="data3"
);
$encode=json_encode($array); //数据库写入转换
$addslashes=addslashes(json_encode($array)); //如果只用英文字符的话可以直接用上面,用中文或有带斜杠/,PHP写入数据库的时候会去掉斜杠/,所以addslashes函数在转换下写入
$decode=json_decode($array,true); //数据库读取转换
?
php 多个 数组 怎样存入数据库
订单提交后php往数据库插入数组:
$_POST['list'] 的值会是:
array(a,b,c,d,e,a,b,a,b,c,d);
根本就没有使用价值php往数据库插入数组,即无法分清楚是这些选项是属于哪个名称的。所以php往数据库插入数组,要么用js先在提交之前加工一个“list”的值,或者改交下list的名称,如下:
input type="checkbox" name="list[]" value="a" /
改为:
input type="checkbox" name="list_sina[]" value="a" /
其php往数据库插入数组他的按些修改。
在提交之后的处理代码如下:
$title = isset($_POST['title']) ? $_POST['title'] : array();
$insert_data = array();
foreach($title as $row){
$name = trim($row);
$list = isset($_POST['list_'.$name]) ? implode(',',$_POST['list_'.$name]) : '';
$insert_data[] = "('$name','$list')";
}
if(!empty($insert_data)) $mysql-query('INSERT INTO mysql_table(name,list)VALUES '.implode(',',$insert_data));
这样的数据库查询语句为:
INSERT INTO mysql_table(name,list)VALUES ('sina','a,b,c,d,e'),('qq','a,b'),('ifeng','a,b,c,d')
php怎么操作才能把这个二维数组加进数据库里面
可以按照 ly4885806 php往数据库插入数组的方法 序列化成字符串插入数据库php往数据库插入数组,不过这个只能插入一个字段不循环
如果你php往数据库插入数组的数据是需要插入多个行和字段的话只能循环php往数据库插入数组了
$Array = Array ( [0] = Array ( [0] = 张三 [1] = 70 ) [1] = Array ( [0] = 李四 [1] = 80 ) [2] = Array ( [0] = 王五 [1] = 90 )
?
$in_value_arr = array();
foreach($Array as $key=$value){
foreach($value as $k=$v){
$in_value_arr[]="(**,**,**)";
}
$in_value = '('.implode('),(', $in_value_arr).')';
$sql = "INSERT INTO tbl_name (col1,col2) VALUES{$in_value};";
}
?
php将一个长array数组循环插入数据库
利用PHP对数组赋值时下标变量会自动递增php往数据库插入数组的特点php往数据库插入数组,可以很方便用循环将数据存入一个数组。例如php往数据库插入数组:$arr[] = 'a'; 这条语句会将字符a存入数组变量$arr中,如果$arr不存在则会新建一个php往数据库插入数组;若已存在,则将$arr数组的下标变量递增1后存入字符。也就是说,如果已有$arr[0]='a', 那么执行 $arr[] = 'b'; 后,数组其实是进行php往数据库插入数组了$arr[1] = 'b' 的操作。
php 把数组插入数据库
lxydjx 正解,我来详细补充一下吧。未经测试、、、
//初始化
$sql = array();
// 从 a.php POST 过来的值
$_POST["xinxi"] = "20-2,19-1,18-1";
// 拆分为 array("20-2", "19-1", "18-1");
$post_data = explode(",", $_POST["xinxi"]);
// 循环数组
for($i = 0; $i count($post_data); $i++) {
// 再次拆分每一条信息为 array("20", "2"), array("19", "1"), array("18", "1")
$details = explode("-", $post_data[$i]);
// 将每一条信息添加到 $sql 数组中
array_push($sql, "(20121015194535193356, ".$details[0].", ".$details[1].")");
}
// 用 , 连接,转换为 string
$sql = implode(",", $sql);
// 插入数据库
mysql_query("INSERT INTO table_sales (dingid, detailsid, buynumber) VALUES ($sql)");
php 怎么把数组添加到数据库中的啊!!!!这是phpcmsv9的 求解释啊
array2string函数 是phpcms自带的函数
/phpcms/libs/functions/global.func.php 第293行
/**
* 将数组转换为字符串
*
* @param array $data 数组
* @param bool $isformdata 如果为0php往数据库插入数组,则不使用new_stripslashes处理php往数据库插入数组,可选参数,默认为1
* @return string 返回字符串,如果,data为空,则返回空
*/
function array2string($data, $isformdata = 1) {
if ($data == '')
return '';
if ($isformdata)
$data = new_stripslashes($data);
return addslashes(var_export($data, TRUE));
}
php往数据库插入数组的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php数组存入数据库、php往数据库插入数组的信息别忘了在本站进行查找喔。