문제

나 PHP 배열은 다차원 필요 선택 인쇄하 excel 에서 작가입니다.내가 다음과 같다:

array(2) {
  [10227]=>
  array(9) {
    ["user"]=>
    string(5) "10227"
    ["talk_time"]=>
    string(1) "8"
    ["acw"]=>
    string(1) "0"
    ["idle"]=>
    string(1) "6"
  }
  [10236]=>
  array(9) {
    ["user"]=>
    string(5) "10236"
    ["talk_time"]=>
    string(2) "10"
    ["acw"]=>
    string(1) "3"
    ["idle"]=>
    string(1) "0"
  }
}

과 엑셀에서 나는 그것을 필요로하는 모습이 좀'다음과 같다:

User  | talk_time  | acw  | idle
10227 | 8          | 0    | 6
10236 | 10         | 3    | 0

나는 생각을 관리할 수 있는'글쓰기'excel,그러나 나는 얻을 수가 없 php 선택적으로 써 각 필드의 값을 어떻게 내가 원하는니다.나는 많이 읽고도 많은 것들을 생각,응답을 사용하는 것 두 foreach 루프 중 하나에 대한'초기'배열 및 다른 중 하나에 대한 두 번째 차원 배열을,하지만 몇 가지 이유로 나는 할 수 없습니다.나 또한 시도를 사용하여'추출'그러나 그것을 가지 않았다 너무...나'교육'PHP 프로그래머입니다.구글은 대학(와 유래 내 교수)그리고 비록 나는 없다 너무 많은 문제는 배열 작업...,세계가 거꾸로 다차원 어레이...

어떤 도움을 주시면 감사하겠습니다.

감사합니다!

-----집----- Ok,I 이 필요하지 않'Excel 로 내보내기'기능,내가 할 수 있는 한 나는 할당할 수 있는 값의 배열 변수입니다.

저는 현재 이렇게:

foreach ($agents as $row){
  $USER=$row["user"];
  echo "$USER\n";
  foreach($row as $col){
  $TALK_SEC=$col["talk_sec"];
  }
}

그러나 나

1023610236102361023610236102361023610236102361023610236102361023610236102361023610236102361023610236102361023610236

내가 먼저 에이전트(나 제한하는 쿼리를 1-제 1-)시간 24 시간.는 경우 추가하는 echo $TALK_SEC, 데,첫 번째 수는 각각의 세 네 필드를 나는 쿼리 시간에 대해 24 시간 이전이 될 것'침합니다....

최종 편집하고 응답

을 얻을 수 있었을 사용하여 실제로 단일 foreach 책:

foreach ($agents as $row){
    //VAR_DUMP($row);
    $USER=$row['user'];
    $TALK=$row['talk_time'];
    $ACW=$row['acw'];
    $IDLE=$row['idle'];

지금 내가 할 일은 인쇄의 변수 이름($USER, $TALK, 등...)스프레드시트에서는 내가 이미 만들어 PEAR::EXCEL_WRITER.물론 당신은 당신을 만들 필요가 루프를 통해 반복하는 다른 $USERS 는 쿼리를 출력합니다.

도움이 되었습니까?

해결책

이 스크립트를 생성할 수 있는 파일 excel.하지만 경우에 당신은 필요한 형식의 배열을 넣어:

User  | talk_time  | acw  | idle
10227 | 8          | 0    | 6
10236 | 10         | 3    | 0

스크립트:

<?php

$file="demo.xls";
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$file");
$array = array(
    array(10, 15, 20),
    array(10, 15, 20),
    array(10, 15, 20)
);
?>
<table>
<?php foreach($array as $row): ?>
    <tr>
    <?php foreach($row as $col):?>
        <td><?php echo $col ?></td>
    <?php endforeach; ?>
    </tr>
<?php endforeach; ?>
</table>

다른 팁

이것은 단지 외에도 대답이 이미 여기에 게시...그것은 단지 포함하는 방법을 보여 줍 제목에 대한 배열에서 Excel file.마이 다른 사람의 게시물로서 대답지 않을 내는 경우,이것은 당신을 위해 그것을 않습니다.

출력:

user    talk_time   acw      idle
10227   8           0        6
10236   10          3        0

코드:

<?php
$array = 
      array (
        10227 => 
        array (
          'user' => '10227',
          'talk_time' => '8',
          'acw' => '0',
          'idle' => '6',
        ),
        10236 => 
        array (
          'user' => '10236',
          'talk_time' => '10',
          'acw' => '3',
          'idle' => '0',
        ),
      );  
$file="demo.xls";
header("Content-type: application/vnd.ms-excel");
header("Content-Disposition: attachment; filename=$file");

$index = array_slice($array,0,1);  
$index = array_keys($index[0]);   

?>
<table> 
    <tr>
      <?php foreach($index as $heading): ?>
        <th><?php echo $heading ?></th>
      <?php endforeach; ?>
    </tr> 
    <?php foreach($array as $row): ?>
    <tr>
       <?php foreach($row as $col):?>
          <td><?php echo $col ?></td>
       <?php endforeach; ?>
   </tr>
   <?php endforeach; ?>
</table>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top