日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
php如何實(shí)現(xiàn)兩張不同的表分頁

本文操作環(huán)境:windows7系統(tǒng)、php7.1版、DELL G3電腦

php 如何實(shí)現(xiàn)兩張不同的表分頁?

PHP 跨表分頁

當(dāng)兩表數(shù)據(jù)相對均衡的情況下比較適用

 $min_b || empty($b_f)) # b組數(shù)據(jù)小  重新查詢a組
        {
            # 查出偏移量
            # 第二次查詢 second
            $a_s = getRangeInfo($a, $min, $max_a); # second 第二次查找
            # 求出新查出的數(shù)據(jù)與最開始查出a數(shù)組相差個數(shù)
            $offset = count($a_s)-$a_f_len;
        } else { # a組數(shù)據(jù)小  重新查詢b組
            # 查出偏移量
            $b_s = getRangeInfo($b, $min, $max_b);
            # 求出新查出的數(shù)據(jù)與最開始查出a數(shù)組相差個數(shù)
            $offset = count($b_s)-$b_f_len;
        }
    }
    $now_position = $show = (int)($averge*2-$offset);
    $start_position = $page*$page_size;
    $end_position = ($page+1)*$page_size-1;
    // 假如一次查詢某數(shù)組為空,查詢的第二組數(shù)據(jù)未能涵蓋所需全部數(shù)據(jù),故重新查詢
    $a_s = getlimit($a, $min, $start_position-$now_position+$page_size);
    $b_s = getlimit($b, $min, $start_position-$now_position+$page_size);
    $total_arr = array_merge($a_s, $b_s) ;
    sort( $total_arr); # 升序排列

    $res = [];
    foreach ($total_arr as $k=>$v) {
        if ($now_position > $end_position) {
            break;
        }
        if ($now_position < $start_position){
            $now_position = $now_position+1;
            continue;
        }
        $now_position = $now_position+1;
        $res[] = $v;
    }
	// 思路如下:
    $min_str = $min_a > $min_b ? ' 最小數(shù)在b, 重新獲取a數(shù)據(jù)'.json_encode($a_s):'最小數(shù)在a, 重新獲取b數(shù)據(jù)'.json_encode($b_s);

    print_r('數(shù)組$a:'.json_encode($a));
    echo '
'; print_r('數(shù)組$b:'.json_encode($b)); echo '
'; print_r('平均數(shù)floor is '.$averge.', $a 最小值是 '.$min_a.',$b 最小值是 '.$min_b.', 對比之后得出最小值是'.$min.','.$min_str. '此時偏移量'.$offset.', 最小數(shù)'.$min.'處于位置'.$show.', 我需要'.$start_position.'到'.$end_position.'的數(shù)據(jù), 查出所需數(shù)據(jù)為'.json_encode($total_arr).', 結(jié)果為'.json_encode($res)); return $res;}// 按值范圍獲取function getRangeInfo ($array, $start_value, $end_value){ sort($array); $res = []; foreach ($array as $k => $v) { if ($v >= $start_value && $v <= $end_value){ $res[] = $v; } } return $res;}// 按起始位置個數(shù)獲取function getlimit ($array, $start_value, $num){ sort($array); $res = []; foreach ($array as $k => $v) { if ($num<=0) { break; } if ($v >= $start_value){ $res[] = $v; $num --; } } return $res;}$b = [1];$a = [2,3,1,4,5,6,7,8,9,10,12,14];$page = 2; # 第一頁$page_size = 5;$list = getPage($a, $b, $page, $page_size);$all = array_merge($a, $b);sort($all);echo '
';echo '
';echo '
';$start_position = $page*$page_size;$real = array_slice($all, $start_position, $page_size);print_r('合并總數(shù)據(jù)'.json_encode($all).',一頁'.$page_size.'條, 第'.(string)($page+1).'頁數(shù)據(jù)為:'.json_encode($real));


新聞名稱:php如何實(shí)現(xiàn)兩張不同的表分頁
URL地址:http://www.dlmjj.cn/article/dhicgjh.html