如何获取 php 中的数据结果数组

How to get data result array in php

我有数据并存储在数据库中,数据return和result_array(),当数据设置为var_dump()时,结果如下:

array(6) {
    [0] => array(4) {
        ["id_termmeta"] => string(1)"1" 
        ["id_term"] => string(1)"1" 
        ["meta_key"] => string(9)"telephone" 
        ["meta_value"] => string(17)"(021) 456 789 xxx"
    }
    [1] => array(4) {
        ["id_termmeta"] => string(1)"2" 
        ["id_term"] => string(1)"1" 
        ["meta_key"] => string(11)"handphone_1" 
        ["meta_value"] => string(12)"08567890xxx"
    }
    [2] => array(4) {
        ["id_termmeta"] => string(1)"3" 
        ["id_term"] => string(1)"1" 
        ["meta_key"] => string(11)"handphone_2" 
        ["meta_value"] => string(7)"087654321xxx"
    }
    [3] => array(4) {
        ["id_termmeta"] => string(1)"4" 
        ["id_term"] => string(1)"1" 
        ["meta_key"] => string(11)"handphone_3" 
        ["meta_value"] => string(8)"081234567xxx"
    }
    [4] => array(4) {
        ["id_termmeta"] => string(1)"5" 
        ["id_term"] => string(1)"1" 
        ["meta_key"] => string(6)"alamat" 
        ["meta_value"] => string(16)"Jl. Jalan menuju sorga"
    }
    [5] => array(4) {
        ["id_termmeta"] => string(1)"6" 
        ["id_term"] => string(1)"1" 
        ["meta_key"] => string(5)"email" 
        ["meta_value"] => string(20)"blabla@gmail.com"
    }
}

我想在 array[0] 中获取数据 meta_value,在 array[1] 中获取数据 meta_value,在 array[2] 中获取数据 meta_value,等等..

如何做成这样:

<ul class="list-contact">
   <li><a href=""><div class="list-style"><img src="tlpn.png"></div>(021) 456 789 xxx</a></li>
   <li><a href=""><div class="list-style"><img src="phone.png"></div> <p>08567890xxx<br>087654321xxx<br>081234567xxx</p></a><a href=""></a></li>
   <li><a href=""></a><a href=""><div class="list-style"><img src="marking.png"></div>
                            <p>Jl. Jalan menuju sorga</p>
                            </a></li>
   <li><a href=""><div class="list-style"><img src="msg.png"></div>blabla@gmail.com                             </a></li>
</ul>

结果如下:

你可以使用foreach

// example like this
foreach(data <- datalist){
  echo data.telephone["meta_value"];
}

我假设您的控制器中有给定的可用数据数组。假设这个数组的名称是$results.

第一

$results 数组传递给您需要显示的视图 results.If 您的视图是 results.php 那么您的代码就像

public function viewResults(){
//Your controller logic
$data = array('results' => $results);
$this->load->view('results',$data);
}

第二

现在您的结果数组在您的视图中可用,您可以使用它来获得所需的结果

下面的代码是您可以做的最简单的代码,但如果它能正常工作,您应该只使用给定格式的 $result,例如,如果您的数组缺少 "handphone_1"以下所有值都将显示在错误的位置。

    <ul class="list-contact">
      <li>
        <a href=""><div class="list-style"><img src="tlpn.png"></div><?php echo $results['0']['meta_value'] ?></a>
      </li>
      <li><a href=""><div class="list-style"><img src="phone.png"></div> <p><?php echo $results['1']['meta_value'] ?><br><?php echo $results['2']['meta_value'] ?><br><?php echo $results['3']['meta_value'] ?></p></a><a href=""></a>
      </li>
      <li>
        <a href=""></a><a href=""><div class="list-style"><img src="marking.png"></div><p><?php echo $results['4']['meta_value'] ?></p></a>
      </li>
      <li><a href=""><div class="list-style"><img src="msg.png"></div><?php echo $results['5']['meta_value'] ?></a>
      </li>
    </ul>

要消除所讨论的问题,您可以使用带有条件语句的循环

<?php
$count=0; 
foreach($results as $result){ ?>
  <ul class="list-contact">
      <?php if($result['meta_key']=='telephone'){ ?>
          <li>
            <a href=""><div class="list-style"><img src="tlpn.png"></div><?php echo $result['meta_value'] ?></a>
          </li>
      <?php } ?>
      <?php if( strpos($result['meta_key'], 'handphone') !== false ){ 
          if($count==0 ) { ?>

          <li>
            <a href="">
              <div class="list-style"><img src="phone.png"></div>
          <?php $count++; } ?>
              <?php if($result['meta_key']=='handphone_1'){
                  echo $result['meta_value'].'</br>';}
              ?> 
              <?php if($result['meta_key']=='handphone_2'){
                  echo $result['meta_value'].'</br>';}
              ?>
              <?php if($result['meta_key']=='handphone_3'){
                  echo $result['meta_value'];}
              ?> 
            </a>
          </li>
      <?php } ?>
      <?php if($result['meta_key']=='alamat'){ ?>
          <li>
            <a href=""><div class="list-style"><img src="marking.png"></div><?php echo $result['meta_value'] ?></a>
          </li>
      <?php } ?>
      <?php if($result['meta_key']=='email'){ ?>
          <li>
            <a href=""><div class="list-style"><img src="msg.png"></div><?php echo $result['meta_value'] ?></a>
          </li>
      <?php } ?>
  </ul>
<?php } ?>

试试这个代码,它的工作,谢谢@mohade

<ul class="list-contact">
   <li><a href=""><div class="list-style"><img src="tlpn.png"></div><?php echo $contact[0]['meta_value']; ?></a></li>
   <li><a href=""><div class="list-style"><img src="phone.png"></div> <p><?php echo $contact[1]['meta_value']; ?><br><?php echo $contact[2]['meta_value']; ?><br><?php echo $contact[3]['meta_value']; ?></p></a><a href=""></a></li>
   <li><a href=""></a><a href=""><div class="list-style"><img src="marking.png"></div><p><?php echo $contact[4]['meta_value']; ?></p>
                            </a></li>
   <li><a href=""><div class="list-style"><img src="msg.png"></div><?php echo $contact[5]['meta_value']; ?></a></li>
</ul>