PHPEXCEL:php excel只显示1个字母

请帮助我在PHPEXCEL。 它只显示一个字母。 这是我的PHP代码:

$sql_question = "SELECT * FROM tna_question WHERE title_id = '$tid' ORDER BY section_id"; $result_question = mysql_query($sql_question, $db); $category = array(); while ($row = mysql_fetch_assoc($result_question)) { $arr1 = $row['question']; $arr = array_push($category ,$arr1); $category_count++; } $arr3[] = $category; 

从SQL查询的结果是一个数组:

 Array ( [0] => gfhgfh [1] => gfhfg [2] => fggfdg [3] => fds [4] => asd [5] => fghgfh [6] => Policy Wordings / Coverage [7] => Risk Assessment / Survey & Underwriting [8] => Policy Wordings / Coverage [9] => Risk Assessment / Survey & Underwriting ) 

当我使用这一行:

 $objPHPExcel->setActiveSheetIndex()->fromArray($category, NULL, 'C7'); 

它只给了我每行的第一个字母

在这里输入图像说明

但是如果我做这一个:

 $objPHPExcel->setActiveSheetIndex()->fromArray($arr3, NULL, 'C7'); 

它会把所有的数据放在一行中。 在这里输入图像说明

但我想要的输出是这样的:

在这里输入图像说明

您可以使用下面的代码来获得所需的结果:

 foreach($arr3 as $k => $v){ $objPHPExcel->getActiveSheet()->setCellValueByColumnAndRow($col, $k, $v); } 

注意 :更改列值只会使其左右移动。 如果你想把整个事情转移下来,用$ k + $ valreplace$ k,其中$ val是你想要向下移动的行数。