排序PHP数组和设置键

时间:2015-01-21 13:30:39

标签: php arrays sorting

我在将以下代码分配给自己的数组键时遇到了一些麻烦。它适用于col,它从低到高但不是行!我不能完全理解它。行项目正在组合在一起,但顺序不正确(第3行和第4行出现错误的方式)

        if (isset($blogsArr[$bid]->imgurl)){
            $imghtml = 'style="background-image:url('.$blogsArr[$bid]->imgurl.');" data-imgurl="'.$blogsArr[$bid]->imgurl.'"';
        }
        if (isset($blogsArr[$bid])){
            $dbRow=$blogsArr[$bid]->row;


            $html[$dbRow][$blogsArr[$bid]->col] = '<li data-row="'.$blogsArr[$bid]->row.'" data-col="'.$blogsArr[$bid]->col.'" data-sizex="'.$blogsArr[$bid]->size_x.'" data-sizey="'.$blogsArr[$bid]->size_y.'" data-type="blog" data-blogid="'.$bid.'" class="blog-box blog-id-'.$bid.'">';

            $html[$dbRow][$blogsArr[$bid]->col] .= '<input class="box-pid" type="hidden" value="'.$bPid.'">';
            $html[$dbRow][$blogsArr[$bid]->col] .= '<div class="boxbg" '.$imghtml.'></div>';
            $html[$dbRow][$blogsArr[$bid]->col] .= '<h2>';
            $html[$dbRow][$blogsArr[$bid]->col] .= '<a href="'.$pURL.'" style="color:'.$tcolor.';">';
            $html[$dbRow][$blogsArr[$bid]->col] .= ucfirst ($site['title']);
            $html[$dbRow][$blogsArr[$bid]->col] .= '</a></h2>';

            // Article title overlay
            $html[$dbRow][$blogsArr[$bid]->col] .= '<div class="article-overlay">';
            $html[$dbRow][$blogsArr[$bid]->col] .= '<a href="'.$pURL.'" class="ao-link">Article Title</a>';
            $html[$dbRow][$blogsArr[$bid]->col] .= '<a href="'.$pURL.'" class="ao-view"><span>VIEW ARTICLE</span></a>';
            $html[$dbRow][$blogsArr[$bid]->col] .= '</div>';


            $html[$dbRow][$blogsArr[$bid]->col] .= '</li>';
        }
        else {
            $html .= '<li data-row="1" data-col="1" data-sizex="1" data-sizey="1" data-type="blog" data-blogid="'.$bid.'" class="blog-box blog-id-'.$bid.'"><input class="box-tcolor" type="hidden" value="'.$tcolor.'"><input class="box-pid" type="hidden" value="'.$bPid.'"><div class="boxbg" '.$imghtml.'></div><h2 style="color:'.$tcolor.';">' . ucfirst ($site['title']).'</h2></li>';
        }

}

if (isset($adsArr)){
   foreach ( $adsArr as $ad ) {
       $html[$ad->row][$ad->col] = '<li data-row="'.$ad->row.'" data-col="'.$ad->col.'" data-sizex="'.$ad->size_x.'" data-sizey="'.$ad->size_y.'" class="advert-box" data-blogid="'.$ad->blogid.'" data-type="ad" data-max-sizex="'.$ad->size_x.'" data-max-sizey="'.$ad->size_x.'" data-min-sizex="'.$ad->size_x.'" data-min-sizey="'.$ad->size_x.'"></li>';
    }
}


sort($html);



$ii=0;
// Sort the cols
foreach($html as $ht) {
    sort($ht);
    $html[$ii]=$ht;
    $ii++;
}

return $html;

我一直在查看这篇文章以供参考http://www.homeandlearn.co.uk/php/php6p2.html

非常感谢任何帮助。

由于

1 个答案:

答案 0 :(得分:0)