gpt4 book ai didi

php - 为什么在使用 WordPress 的 $wpdb 获取数据库行时,int 列返回为字符串?

转载 作者:行者123 更新时间:2023-11-29 06:08:07 24 4
gpt4 key购买 nike

我创建了一个在我的 Wordpress 站点中使用的表格,其中的列使用 date , intvarchar作为类型。

但是,当我使用 var_dump要获取特定行和结果的值,它将所有列显示为 string .

我还没有看到这实际上影响了数据库调用和函数的操作,但我只是想知道为什么它们都以字符串形式返回,我在 var_dump 中看到了核心 Wordpress 函数。返回 int有时值。

enter image description here

$bv_set = $wpdb->get_row('SELECT * FROM wp_before_after WHERE ID = '.$bv_id );

var_dump($bv_set);

C:\wamp64\www\bellavou\wp-content\plugins\bv-before-afters\views\edit.php:8:
object(stdClass)[6915]
public 'ID' => string '1' (length=1)
public 'created' => string '0000-00-00' (length=10)
public 'before_date' => string '2015-04-08' (length=10)
public 'after_date' => string '2015-04-21' (length=10)
public 'patientID' => string '2137' (length=4)
public 'procedureID' => string '238' (length=3)
public 'patient_display' => string '1' (length=1)
public 'procedure_display' => string '1' (length=1)
public 'gallery_display' => string '1' (length=1)
public 'before_img' => string '2200' (length=4)
public 'after_img' => string '2199' (length=4)
public 'period_taken' => string '1week' (length=5)
public 'notes' => string '' (length=0)

最佳答案

通读$wpdb->get_row的代码, 你可以看到它最终调用了 $wpdb->query ,它依次调用 mysqli_fetch_object(撰写本文时为第 1822 行):

while ( $row = mysqli_fetch_object( $this->result ) ) {
$this->last_result[$num_rows] = $row;
$num_rows++;
}

现在,查看 mysqli_fetch_object 的 PHP 文档:

Returns an object with string properties that corresponds to the fetched row or NULL if there are no more rows in resultset.

它提供了问题的答案。

关于php - 为什么在使用 WordPress 的 $wpdb 获取数据库行时,int 列返回为字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40103136/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com