【问题标题】:fix the display format in php when trying to retrieve data from database尝试从数据库中检索数据时修复 php 中的显示格式
【发布时间】:2017-02-13 14:28:11
【问题描述】:

我使用 PHPMYSQL 数据库来检索我使用以下查询的一些数据:

$result2 = $wpdb->get_results('select siteID, siteNAME, equipmentTYPE from `site_info`  where ownerID = 159');
foreach($result2 as $result) {
    print_r ($result);
    echo "<br/>";

但是这个查询返回这个格式:

stdClass Object ( [siteID] => BAH004 [siteNAME] =>XXXXXXX [equipmentTYPE] => XXXXXXX ) 

我希望格式是这样的: BAH004, XXXXXXX, XXXXXXX

谁能帮我解决这个问题?

【问题讨论】:

    标签: php mysql database wordpress echo


    【解决方案1】:

    根据wpdb::get_results,可以使用ARRAY_N

    wpdb::get_results(string $query = null, string $output = OBJECT)
    $输出

    (string) (可选)任何 ARRAY_A |数组_N |对象 | OBJECT_K 常量。使用前三个之一,返回一个按 SQL 结果行号从 0 开始索引的行数组。每行是一个关联数组(列 => 值,...),一个数字索引数组(0 => 值,...)或一个对象。 ( ->column = value ),分别。使用 OBJECT_K,返回由每行第一列的值作为键的行对象的关联数组。重复的键被丢弃。

    默认值:对象

    所以,使用

    $result2 = $wpdb->get_results('select siteID, siteNAME, equipmentTYPE from `site_info`  where ownerID = 159', ARRAY_N);
    

    应该可以解决问题。


    要获得所需的输出格式,您不能使用print_r,因为print_r 输出具有固定格式。而是自己做输出,例如

    foreach($result2 as $result) {
        echo join(', ', $result), '<br/>';
    }
    

    【讨论】:

    • 你的答案并不完全正确,因为它返回 Array ( [0] => BAH004 [1] => xxxxxx [2] => xxxxxxx )
    猜你喜欢
    • 1970-01-01
    • 2018-10-07
    • 1970-01-01
    • 2023-03-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-12
    相关资源
    最近更新 更多