Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/231.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 按字母顺序显示分类名称的步骤_Php_Wordpress - Fatal编程技术网

Php 按字母顺序显示分类名称的步骤

Php 按字母顺序显示分类名称的步骤,php,wordpress,Php,Wordpress,我已经按字母顺序显示了自定义分类法的类别,如下所示 A acategoryone acategorytwo acategorythree B bcategoryone bcategorytwo bcategorythree C categoryone categorytwo categorythree 代码是这样的 <?php $groups = array(); if ($categories) { foreach ($categories as $catego

我已经按字母顺序显示了自定义分类法的类别,如下所示

A

acategoryone
acategorytwo
acategorythree

B

bcategoryone
bcategorytwo
bcategorythree

C

categoryone
categorytwo
categorythree
代码是这样的

<?php

$groups = array();

if  ($categories) {

  foreach ($categories  as $category ) {
    $first_letter_tax = $category->name ;
    $first_letter = strtoupper( $first_letter_tax[0] );

    $groups[ $first_letter ][] = $category;

  }

}

ksort($groups);

if( !empty( $groups ) ) {

    foreach ($groups as $letter => $tags) {
        echo '<ul class="tax-name-letter '.strtolower($letter).'">';
            echo '<strong>'.$letter.'</strong><br />';

            foreach( $tags as $taxonomy ) {

                $term_link = esc_url(get_term_link( $taxonomy )); 
                echo '<li><a href="'.$term_link.'">'. $taxonomy->name . '</a></li><br />';

            }
        echo '</ul>';
    }

}
?>
我想显示如上所示的类别。就像我想在第一列中显示A到C,在第二列中显示D到F


在循环中帮助我。我怎么能得到这个?请帮助我。

看看这个例子:

<?php
$groups = array('A to C'=>range('a','c'), 'D to F'=>range('d','f'));
$taxonomy = array('asdf', 'dfa', 'fasd','basdf', 'chfd','eadf', 'easdf', 'asdf','iasdf','oasdf','cafghsd','cafe');
$data_collector = array();

foreach($groups as $key=>$group) {
    $data_collector[$key] = array();
    foreach($group as $char) {            
        foreach($taxonomy as $val) {
            if( $val[0] == $char ) {
                array_push($data_collector[$key], $val);
            }
        }
    }
}

print_r( $data_collector );
<?php
$groups = array('A to C'=>range('a','c'), 'D to F'=>range('d','f'));
$taxonomy = array('asdf', 'dfa', 'fasd','basdf', 'chfd','eadf', 'easdf', 'asdf','iasdf','oasdf','cafghsd','cafe');
$data_collector = array();

foreach($groups as $key=>$group) {
    $data_collector[$key] = array();
    foreach($group as $char) {            
        foreach($taxonomy as $val) {
            if( $val[0] == $char ) {
                array_push($data_collector[$key], $val);
            }
        }
    }
}

print_r( $data_collector );