PHP通过foreach循环向数据库中写入表单项的值的疑问?

PHP通过foreach循环向数据库中写入表单项的值的疑问?,第1张

建议楼主把SQL语句显示出来,自然就明白问题在哪里了,我试着简单说一下,假设你的USER数据表有三个字段(name、age、sex),_POST提交数据也是这三个字段的,假设POST的值分别是abc、18、男,那么帖子的PHP会执行下面的三个SQL语句:

INSERT INTO USER(name) VALUES(abc)

INSERT INTO USER(age) VALUES(18)

INSERT INTO USER(sex) VALUES(男)

现在明白了吧,一、三两句会语法错误,英文没有在文本字段添加引号,第二句即使执行成功插入的记录只有年龄,姓名、性别为空,如果数据库有限制字段有效性,那么第二句插入也会失败,数据库需要的语句是:

INSERT INTO USER(name,age,sex) VALUES('abc',18,'男')

如果理解了,自然会下面这样写PHP语句:

$sql=<<<END

INSERT INTO USER(name,age,sex)

VALUES('{$_POST['name']}',{$_POST['age']},'{$_POST['sex']}')

END

你这种方式数据入库的话,1000w条数据,要连接1000w次数据库的,性能肯定是差的,因为建立一次数据库连接是开销很大的 *** 作

数据库的插入是支持多条的啊

insert into 表(字段) values (值),(值2),(值3)

这样就可以连接一次数据库,插入多条数据了,可以把1000w条数据分几组,这样连接数据库的次数会大大减少,性能自然就好了

语句如下:

foreach($carFactory as $key=>$car){

//在遍历的过程中为 car添加一个新的属性比如生产日期

$carFactory[$key]['made_time'] = time()

}

php优点:

PHP是开源软件,所有PHP的源代码每个人都可以看得到,代码在许多工程师手中进行了检测,同时它与Apache编绎在一起的方式也可以让它具有灵活的安全设定,PHP具有了公认的安全性能。开源造就了强大,稳定,成熟的系统。

跨平台特性,PHP几乎支持所有的 *** 作系统平台及数据库系统,并广为流行。

执行速度快, 效率高,PHP是一种强大的CGI脚本语言,语法混合了C、Java、Perl和PHP式的新语法,执行网页速度比CGI、Perl和ASP更快,而且内嵌Zend加速引擎,性能稳定快速,占用系统资源少,代码执行速度快。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/10059446.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存