2014-10-30 34 views
0

我得到这些错误:注意:未定义偏移:1,2,3,4在dynamic_arr()在我的下列行

注意:未定义偏移:1在 $dynamic_arr[$key][trim($tt[1])] = array(

说明:未定义偏移:2在 'type' => trim($tt[2]),

注意:未定义偏移量:3在 'size' => trim($tt[3]),

注意:未定义偏移:4在 'widget' => trim($tt[4]),

我基本上没有得到什么问题在这里?

<?php 
foreach($b_csv as $key = > $csv) { 
    $dynamic_arr[$key] = array(); 
    $aa = explode("\n", $csv); 
    foreach($aa as $key2 = > $value) { 
    $tt = explode(',', $value); 
    if (isset($tt)) { 
     if (!empty($tt[5])) { 
     $dynamic_arr[$key][trim($tt[1])] = array(
      'label' = > trim($tt[0]), 
      'type' = > trim($tt[2]), 
      'size' = > trim($tt[3]), 
      'widget' = > trim($tt[4]), 
      'option' = > trim($tt[5]), 
     ); 
     } else { 
     $dynamic_arr[$key][trim($tt[1])] = array(
      'label' = > trim($tt[0]), 
      'type' = > trim($tt[2]), 
      'size' = > trim($tt[3]), 
      'widget' = > trim($tt[4]), 
     ); 
     } 
    } 
    } 
} 
return $dynamic_arr; 
?> 
+0

提供'$ b_csv'的示例输入。 – Paul 2014-10-30 11:48:57

回答

1

变化

if (isset($tt)) 

到:

if (!empty($tt)) 

$tt总是被设置,因为你赋予它的前行。但是如果它是空的,你会在else块中得到错误,因为你会尝试访问数组的元素。

相关问题