亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

按字母將MySQL數據劃分為四個相等的引導程序行順序

按字母將MySQL數據劃分為四個相等的引導程序行順序

PHP
大話西游666 2021-05-06 13:09:55
我有一個類別表,我想將類別數據動態顯示為4個相等的自舉4行,并且數據必須按字母順序顯示。首先,我計算數據的數量并除以4,然后運行4個查詢以找到前25個數據,并在第二個查詢中查找下一個25個數據,依此類推,但是正在尋找更好的解決方案。$catCount = Category::all()->count();$inOneRow = intval( $catCount / 4);我想要的是
查看完整描述

1 回答

?
飲歌長嘯

TA貢獻1951條經驗 獲得超3個贊

假設類別是類別名稱的表-您可以一次選擇所有類別,然后在查詢中使用ORDER BY子句:


$query = 'SELECT name FROM db.categories ORDER BY name ASC;';

您也可以在結果集上使用sort:


$query = 'SELECT name FROM db.categories;';

/* execute query here... */

sort($resultSet);

假設您這樣做了,那么使用引導網格就可以輕松進行樣式設置(注意小提琴中的模擬結果集):


<?php

const NUM_COLS = 4;

$numResults = count($dummyResult);

$numPerCol = round($numResults / NUM_COLS);

?>

<div class="container">

    <div class="row">

        <?php

            for($i = 0, $col = 0; $col < NUM_COLS; $col++){

                echo '<div class="col">';

                for($colLimit = min($numResults, $i + $numPerCol); $i < $colLimit; $i++){

                    echo '<div class="row">'.$dummyResult[$i]['category'].'</div>';

                }

                echo '</div>';

            }

        ?>

    </div>

</div>

更容易理解,盡管示例可能更慢:


<?php

const NUM_COLS = 4;

$numResults = count($dummyResult);

$numPerCol = round($numResults / NUM_COLS);

?>

<div class="container">

    <div class="row">

        <?php

            for($i = 0; $i < NUM_COLS; $i++){

                echo '<div class="col">';

                foreach( array_splice($dummyResult, 0, $numPerCol) as $row ){

                    echo '<div class="col">'.$row['category'].'</div>';

                }

                echo '</div>';

            }

        ?>

    </div>

</div>

注意:除非另作樣式,否則容器將是其父容器的100%寬度。默認情況下,列寬將相等。請參閱Bootstrap網格。


查看完整回答
反對 回復 2021-05-28
  • 1 回答
  • 0 關注
  • 174 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號