получить вывод массива в порядке убывания с помощью php

#php #arrays #for-loop #foreach

#php #массивы #for-цикл #foreach

Вопрос:

у меня есть один php-массив
, и я хочу вывести вывод этого массива во что-то вроде решающего типа.
Вот мой php-код

 <?php
$data = array('A','B','C','D','E','F');
$count = count($data);
for($k = 0;$k<$count;$k  ){
    foreach($data as $key => $value){
        if($key == $k){
            $datanew = $count - $k;
            for($i=0 ; $i<$datanew ; $i  ){
                echo "X";
            }
        }else{
            echo "V";
        }
    }
    echo "</br>";
}
?>
  

текущий вывод

 XXXXXXVVVVV
VXXXXXVVVV
VVXXXXVVV
VVVXXXVV
VVVVXXV
VVVVVX
  

исключенный вывод

 XXXXXX
VXXXXX
VVXXXX
VVVXXX
VVVVXX
VVVVVX
  

сортировка
после X нет V

какую логику я хочу использовать неявно, чтобы получить идеальный вывод.
Спасибо

Ответ №1:

Я надеюсь, что вы довольны следующим решением:

 <?php

$data = array('A', 'B', 'C', 'D', 'E', 'F');
$count = count($data);
for ($k = 0; $k < $count; $k  ) {
    echo str_repeat("V", $k);
    echo str_repeat("X", $count-$k);
    echo "<br />";
}
?>
  

Я использовал str_repeat для повторения символов X и V . Итак, вам просто нужен только один for цикл.

Вывод:

 XXXXXX
VXXXXX
VVXXXX
VVVXXX
VVVVXX
VVVVVX
  

Пример на Ideone.com

Ответ №2:

Просто просто добавьте разрыв в свой код, как показано ниже:

     <?php
     $data = array('A','B','C','D','E','F');
     $count = count($data);
     for($k = 0;$k<$count;$k  ){
       foreach($data as $key => $value){
          if($key == $k){
            $datanew = $count - $k;
               for($i=0 ; $i<$datanew ; $i  ){
                  echo "X";
                }
               break;
             }
          else{
            echo "V";
           }
        }
       echo "</br>";
     }
   ?>
  

И выводите так, как вы хотели