【问题标题】:How to empty the array value or unset the array value in php如何在php中清空数组值或取消设置数组值
【发布时间】:2016-03-30 05:04:08
【问题描述】:

这是我的代码:

 foreach ($category_attribute_list_value as $key => $value) {
        foreach ($value as $key2 => $value_fial) {
            if($key==0){
                $x[]=$value_fial->attribute_value;
                $x_id[]=$value_fial->attribute_value_id;
            }
        }}
        foreach ($category_attribute_list_value as $key_y => $value_y) {
        foreach ($value_y as $key2_y => $value_fial_y) {
            if($key_y!=0)
                {
                $y[]=$value_fial_y->attribute_value;
                $y_id[]=$value_fial_y->attribute_value_id;
                }
        }}

在上面的代码中 $x 包含两个值 (L,XL) 和 $y 相同,它有两个值 (Blue, Green)。

现在来表数据代码

我的表代码是:

echo'<table cellpadding="0" cellspacing="0" border="1" class="pro_code_table">
<tr>
<td class="table_val_data">Code</td>';
foreach($x as $k_x => $v_x){
echo'<td class="table_val_data">'.$v_x.'</td>';
}
echo'</tr>';

foreach($y as $k_y_t=> $v_y_t){
echo'<tr><td class="table_val_data">'.$v_y_t.'</td>';
foreach($y as $k_y=> $v_y){
    foreach($x as $k_x => $v_x){
    $i=1;
    if($k_y_t==$k_y){
        echo'<td class="table_val_data">';
    //foreach($pro_code as $k_pro_code=> $v_pro_code){
    //if($k_x.'-'.$k_y==$k_pro_code){
        echo '<input type="text" name="edit_pro_code[]" value="'.$i.'"">';
    //}
    //}             
    echo'</td>';
    }    
    } 
    $i++;
}
echo'</tr>';
}
echo'</table>';

在表格代码中,我们将数据分成 X 轴和 y 轴,X 表示 $x,y 表示 $y。

整个表循环了更多次(假设它..!),在这种情况下,只有我们在循环中有错误

第一次循环数据

$y 值是这样的Array ( [0] =&gt; bule [1] =&gt; green ) 下次循环我想要相同的数据,但我有以下 o/p

Array ( [0] => bule [1] => green [2] => L [3] => XL [4] => bule [5] => green ) 

它是如何自动合并的。,请参考下面的屏幕截图

【问题讨论】:

  • 第二次循环我也需要相同的第一次循环o/p
  • 第一次循环$y的值为Array([0] => bule [1] => green)
  • 然后下一次循环 $y 的相同值如下 Array ( [0] => bule [1] => green [2] => L [3] => XL [4 ] => 蓝色 [5] => 绿色 )
  • 值自动合并,如何取消设置剩余值
  • @Anant 我找到了解决方案

标签: php arrays loops for-loop foreach


【解决方案1】:

我的答案是:

foreach ($category_attribute_list_value as $key => $value) {
    foreach ($value as $key2 => $value_fial) {
        if($key==0)
        {
            $x[]=$value_fial->attribute_value;
            $x_id[]=$value_fial->attribute_value_id;
        }
    }
}

foreach ($category_attribute_list_value as $key_y => $value_y) {
    foreach ($value_y as $key2_y => $value_fial_y) {
        if($key_y==1)
        {
            $y_temp[]=$value_fial_y->attribute_value;
            $y_id[]=$value_fial_y->attribute_value_id;
        }
    }
}
            $y=array_unique($y_temp);

                //$x=array('L','XL');
                //$y=array('P','dsfs'); 
                //$x_id=array(1,2);
                //$y_id=array(5,6);
                //$xv=array_combine($x_id, $x);
                //$yv=array_combine($y_id, $y);

echo'<table cellpadding="0" cellspacing="0" border="1" class="store_inven_table">
<tr>
<td class="table_val_data">Code</td>';
foreach($x as $k_x => $v_x){
echo'<td class="table_val_data">'.$v_x.'</td>';
}
echo'</tr>';

    foreach($y as $k_y_t=> $v_y_t){
    echo'<tr><td class="table_val_data">'.$v_y_t.'</td>';
    foreach($y as $k_y=> $v_y){
        foreach($x as $k_x => $v_x){
        if($k_y_t==$k_y){
            echo'<td class="store_val_data_input">';
            echo '<input type="text" name="store_pro_inv_qty[]" value="">
            <input type="text" value="'.$value_final_store->store_id.'" name="store_inventory_ids[]">';
        echo'</td>';
        }    
        } 
    }
    echo'</tr>';
    }

echo'</table>';
$x=array();$x_id=array();$y=array();$y_id=array();$value=array();

我的 o/p 如下:

【讨论】:

  • 标记此答案以获得其他帮助。 +10 从我这边自己做。
  • 它显示为“您可以在 2 天内接受自己的答案”
猜你喜欢
  • 2019-02-25
  • 2012-04-06
  • 1970-01-01
  • 2014-08-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-10
  • 1970-01-01
相关资源
最近更新 更多