在我们的位置,我们将使用mysqli和PDO分为准备语句和事务支持之类的东西.有些项目使用一个,另一个项目.我们很难有可能转移到另一个RDBMS.
我更喜欢PDO,因为它允许为预准备语句提供命名参数,据我所知,mysqli没有.
在我们整合项目时只使用一种方法,是否还有其他优点和缺点选择其中一种作为标准?
重复:mysqli或PDO - 有哪些优点和缺点?
我希望将一个网站从mysql移动到mysqli或pdo作为主要的学习工具,但如果可能的话,还要提高性能.
我已经阅读了http://php.net/manual/en/mysqli.overview.php,看起来两者都符合我的需求,但无论如何都不会强烈倾斜.
该网站目前主要使用非面向对象的代码,但我确实有其他语言的OO经验.绝大多数查询都是简单的复杂select语句,只有很少的更新/插入.您对我自己的教育和这个特定网站最有用的建议是什么?
如果您需要任何其他信息,请告诉我.
谢谢.
从现在开始我一直在使用旧的mysql而不是PDO我已经看到许多建议为什么要切换到PDO,但也有许多不同的事实(也在这里SO),例如:
PDO稍快/稍微慢一些PDO有助于防止SQL注入,但仅限于您使用准备好的查询那么,究竟是什么呢?特别是,使用时的最佳实践是什么PDO,速度和安全性都很重要 - 如何在保持快速查询的同时最好地保护自己免受SQL注入攻击?
在处理MySQL时,人们不断提到我应该在我的PHP中使用PDO,我以前从未听说过这个.
什么是PDO?它是如何使用的,有哪些优点和缺点?
谢谢,
是否可以在准备好的mysqli语句中多次使用一个参数,而仅绑定一次?
像这样的东西
$stmt = $mysqli->prepare(SELECT * FROM user WHERE age BETWEEN ?1 - 2 AND ?1 + 2);
$stmt->bind_param('i', $myAge);
Run Code Online (Sandbox Code Playgroud)
我认为这是可能的PDO,但我不知道如何做到这一点mysqli。
这是我的查询,当我在phpmyadmin中运行此查询时,它检索到正确的结果但是当我在php中运行它时会出现这种错误"注意:未定义的索引:pcat在C:\ xampp\htdocs\classified\index.php ".我不明白这个错误,因为"pcat"是数据库中的一个列,它在查询中定义,为什么会出现这种错误?请帮我
<?php
$query = mysql_query("SELECT COUNT( pcat ) FROM category WHERE pcat = 'Jobs'") or die(mysql_error());
while($getcount = mysql_fetch_array($query)){
?>
<span class="count">(<?php echo $getcount['pcat']; ?>)</span></th>
<?php } ?>
Run Code Online (Sandbox Code Playgroud)