簡體   English   中英

PHP 5.5.27-來自一列公共數據的數組中的行數組-如何?

[英]PHP 5.5.27 - array of rows within array from one column's common data - how to?

我是php的新手。 如果我的說法不正確,請原諒。 我可以使用並看到許多循環表行(所有列)的數組示例。

我想從這樣的表中創建/顯示信息:

表例

1, John, Test, bb, cc, dd
2, John, Fram, ee, ff, gg
3, John, Whop, hh, ii, jj
4, Chris, Test, kk, ll, mm
5, Chris, Fram, nn, oo, pp
6, Chris, Whop, qq, rr, ss

(此表將具有更多的行和更多的名稱)

我想要的結果

John
Test, bb, cc, dd
Fram, ee, ff, gg
Whop, hh, ii, jj

Chris
Test, kk, ll, mm
Fram, nn, oo, pp
Whop, qq, rr, ss

(以及整個表格中的所有內容)

我一直在用此代碼從表中檢索數據-

$q = "SELECT id, name, type, data1, data2, data3 FROM table";
$r = mysqli_query($dbc, $q);

從這一點上我應該從哪里繼續?

$johnQuery = "SELECT type, data1, data2, data3 FROM table WHERE name = 'John'";

$chrisQuery = "SELECT type, data1, data2, data3 FROM table WHERE name = 'Chris'";

$john = mysqli_query($dbc, $johnQuery);

$chris= mysqli_query($dbc, $chrisQuery);

你想要這樣嗎?

好的,您現有的2條語句創建並發出查詢以供MySQL執行。

現在,您需要一次從數據庫請求一行數據,以便您可以對結果行進行處理

$q = "SELECT id, name, type, data1, data2, data3 FROM table ORDER BY name";
$result = mysqli_query($dbc, $q);

// first lets check we got a result and not an error
if ( ! $result ) {
    echo mysqli_error($dbc);
    exit;
}

// get one result row at a time as an object
// each returned row will be an object with 
// properties with the same names as the 
// column names of the query we are processing

$lastName = NULL;

while ( $row = mysqli_fetch_object($result) ) {
    // build required output

    if ( $lastname != $row->name ) {
        echo '<br>' . $row->name . '<br>';

        $lastName = $row->name;
    }

    echo $row->type . ', '
       . $row->data1 . ', '
       . $row->data2 . ', '
       . $row->data3 . '<br>';
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM