2017-11-14 1 views
0

ライブラリ 上でrangeToArray()を使用してデータセットを表示しています。各データはユニークなので、データごとに別の関数を実行する必要があります。これを行うには、現在のセル番号を指定して関数を実行する必要があります。PHPexcel現在のセル番号を取得する方法

$mySet = $objPHPExcel->getActiveSheet()->rangeToArray('A1:J31'); 

foreach ($mySet as $row) { 
    echo "<tr>"; 
    foreach ($row as $data) { 

     echo "<td>".$data."</td>"; 

    } 
    echo "</tr>"; 
} 

私の質問は、どのように各データ反復の現在のセル番号を取得できますか?

答えて

1

デフォルトでは、rangeToArray()は単純な列挙型の配列を返します。あなたがメソッドの引数を見ればしかし

/** 
* Create array from a range of cells 
* 
* @param string $pRange Range of cells (i.e. "A1:B10"), or just one cell (i.e. "A1") 
* @param mixed $nullValue Value returned in the array entry if a cell doesn't exist 
* @param boolean $calculateFormulas Should formulas be calculated? 
* @param boolean $formatData Should formatting be applied to cell values? 
* @param boolean $returnCellRef False - Return a simple array of rows and columns indexed by number counting from zero 
*        True - Return rows and columns indexed by their actual row and column IDs 
* @return array 
*/ 

最後の引数は、行と列でインデックス化その配列を返すことができ:

$mySet = $objPHPExcel->getActiveSheet()->rangeToArray('A1:J31', null, true, true, true); 

foreach ($mySet as $rowNumber => $row) { 
    echo "<tr>"; 
    foreach ($row as $columnAddress => $data) { 

     echo "<td>".$columnAddress.$rowNumber.' = '.$data."</td>"; 

    } 
    echo "</tr>"; 
} 
+0

おかげで、これは私が探していますものです。 – KaoriYui

関連する問題