如何在数组下标中使用回显


How to use echo inside array subscript

<?php
                $i=0;
                if( $free_form_fields != '' ) :
                  foreach ($free_form_fields as $fields) 
                  {
                    $parameters = json_decode($fields->parameters);
                    // echo $i;
                    echo "{$form_field_order[$i]}";
                    // if($form_field_order[$i] == $fields->id)
                    // {  
                      echo "<li class='ui-state-default' id={$fields->id}>{$parameters->label}</li>";
                    // }
                    $i = $i+1;
                  } 
                endif;
              ?>

我想检查这样的东西if($form_field_order[$i] == $fields->id)

但它给了我一个错误

> Undefined offset: 2

那么基本上如何访问数组 $from_field_order 的第 $i 个值 (0,1...)?

编辑

print_r($form_field_order);die(); gives an array
Array ( [0] => 2 [1] => 1 )

数组仅包含两个元素(0,1 索引)。它尝试访问索引 2 并引发此错误,因为它不存在。因此,在访问该元素之前,请使用isset($form_field_order[$i])放置一个条件来检查该元素是否存在

试试这个,

<?php
                $i=0;
                if( count($free_form_fields) > 0 ) :
                  foreach ($free_form_fields as $fields) 
                  {
                    $parameters = json_decode($fields->parameters);
                    // echo $i;
                    echo $form_field_order[$i];
                    // if($form_field_order[$i] == $fields->id)
                    // {  
                      echo "<li class='ui-state-default' id={$fields->id}>{$parameters->label}</li>";
                    // }
                    $i = $i+1;
                  } 
                endif;
              ?>