【问题标题】:Is there a difference between mysqli->prepare() and stmt->prepare()?mysqli->prepare() 和 stmt->prepare() 有区别吗?
【发布时间】:2014-07-09 03:04:58
【问题描述】:
$sql = 'SELECT * FROM Table WHERE Column = ?';

$stmt = $mysqli->stmt_init();
if ($stmt->prepare($sql)) {
    $stmt->bind_param('s', $ColumnValue);
    $stmt->execute();
    $stmt->bind_result($Col1, $Col2);
    $stmt->fetch();
    $stmt->close();
}

// or

if ($stmt = $mysqli->prepare($sql)) {
    $stmt->bind_param('s', $ColumnValue);
    $stmt->execute();
    $stmt->bind_result($Col1, $Col2);
    $stmt->fetch();
    $stmt->close();
}

在处理准备好的语句时,有什么区别?应该使用哪个?

【问题讨论】:

  • 感谢您澄清您的问题。我删除了我的答案,因为我认为它现在不相关。这两种方法是完成同一件事的不同方法。我更喜欢第二个,因为它少了一步。

标签: php mysqli prepared-statement


【解决方案1】:

Looking at the source,他们都做同样的事情。就个人而言,我会选择打字较少的那个,因为两者都具有同等的可读性。

【讨论】:

  • 感谢您提供此资源,它非常方便。
猜你喜欢
  • 2013-01-04
  • 2014-11-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-08-21
  • 2011-05-20
  • 2012-10-04
  • 2010-10-30
相关资源
最近更新 更多