Есть ли способ исправить первый вывод count ()? - PullRequest
0 голосов
/ 14 марта 2020

У меня есть веб-сайт mov ie, и я хочу сосчитать ссылки каждого поля, но сначала count (); вывод равен 0, и после этого он продолжит действительные числа, и это ужасно, это мой код:

<div class="links" style="display: none;">
                <?php 
                    $c = 1;
                    $post_something = $link['links'];

                    //This will count the number of links
                $number = count($post_something);


                foreach($post_something as $links){

                //This is the output of the count ?>
                  <p><?php  echo $number  ?></p>

                  <a class="download-button" href="<?php echo $links['link_of_field'] ?>">
                      <?php
                        if(!empty($links['name_field'])){
                            echo $links['name_field'];
                            $c++;
                        } else {?>
                            قسمت <?php echo $c;
                            $c++;
                            ?>
                        <?php }
                      ?>
                  </a>  
                <? }
                ?>
                </div>
                </div>
            <?php }?>

Проблема в том, что сначала он имеет вывод 0!

Вот результат var_dump

array (6) {
[0] => array (2) {["name_field"] => string (0) "" ["link_of_field"] = > string (176) "dl / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / series / game_of_thrones / Game_of_Thrones_S08E01_10bit_x265_720p_WEBRip_2CH_PSA_30NAM {2> [0>>>>>>>>>>>>>>>>>> <>>>> <>>>>>>">>>>> ) "" [ "link_of_field"] => строка (176) "дл / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E02_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv"}
[2] => массив (2) {[ "name_field"] => строка (0) "" [ "link_of_field"] => строка (176) "дл / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E03_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv"}
[3 ] => array (2) {["name_field"] => string (0) "" [ "Link_of_field"] => строка (176) "дл / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E04_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv"}
[4] => массив (2) {[ "name_field"] => строка (0) "" [ "link_of_field"] => строка (176) "/ 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E05_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv"}
[5] => массив дл (2) {[ "name_field"] => строка (0) "" [ "link_of_field"] => строка (176) "дл / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E06_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv"} }
array (6) {
[0] => array (2) {["name_field"] => string (0) "" ["link_of_field"] => string (176) "dl / 1 /354830/4272/12426/303e08ccc88e2dd4428117619f226fe19a/series/game_of_thrones/Game_of_Thrones_S08E01_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv»}
[1] => массив (2) {[ "name_field"] => строка (0) ""[ "link_of_field"] = > строка (176) "дл / 1/3548 30/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E02_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv»}
[2] => массив (2) {[ "name_field"] => строка (0) ""[ "link_of_field"] => строка (176) "дл / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E03_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv"}
[3] => массив (2) {[ "name_field"] => строка (0) "" [ "link_of_field"] => строка (176) "дл / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E04_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv"}
[4] => массив (2) {[» name_field "] => строка (0) ""[" link_of_field "] => строка (176) "дл / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / серия / game_of_thrones / Game_of_Thrones_S08E05_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv"}
[5] => array (2) {["name_field"] => string (0) "" ["link_of_field"] => string (176) "dl / 1/354830/4272/12426 / 303e08ccc88e2dd4428117619f226fe19a / series / game _of_thrones / Game_of_Thrones_S08E06_10bit_x265_720p_WEBRip_2CH_PSA_30NAMA.mkv "}}

1 Ответ

0 голосов
/ 14 марта 2020

Технически, на компьютерном языке все подсчеты начинаются с [0], а не [1]. Так что в вашем коде нет ничего плохого. Он работает нормально, если он начинается с 0.

Эта строка $number = count($post_something); в вашем коде должна возвращать фактическое количество возвращаемых результатов.

Позвольте мне попытаться объяснить на примере;

В коде, подобном этому;

<?php
    $cars=array("Volvo","BMW","Toyota");
    $totalCount = count($cars);
    print_r($cars); // this will print Array ( [0] => Volvo [1] => BMW [2] => Toyota )
    echo $totalCount; // this will return 3
?>

, поэтому в приведенном выше примере массив печатает с 0, но при подсчете получается количество элементов в массиве, равное 3.

Я надеюсь, что это проясняет для вас. Если не готовы объяснить дальше или разобраться с вами.

...