Sandman 0 Denunciar post Postado Agosto 21, 2012 Buenas, Preciso encontrar algo mais elegante para o bloco abaixo. Vou comentar linha a linha para vocês entenderem um pouco mais do que estou fazendo. A pergunta que ficará no final é: Existe uma forma mais elegante de fazer um loop aninhado entre um While e um For? public function makeHtmlTable(){ //Aqui eu populo a variavel $mySqlQuery com uma query. $mySqlQuery = mysql_query($this->getMySqlQuery()); //A função $getColumnNameFromMySqlQuery faz o que o proprio nome diz. Pega as colunas de uma query qualquer e as coloca em um vetor. $metaInformationVector = $this->getColumnNameFromMySqlQuery($this->getMySqlQuery()); printf('%s','<table id="teste">'); printf('%s','<tr>'); //Coloco o vetor dentro de uma estrutura de tabela. for ($index = 0; $index < count($metaInformationVector); $index++){ printf('<td>%s</td>',$metaInformationVector[$index]); } printf('%s','</tr>'); //========================================================================= //Aqui vem a bomba. Eu estou fazendo um fetch normal, porem, preciso pegar esse fetch e fazer com que ele funcione dinamicamente, por isso criei a função que pega as colunas retornadas pela query. Dai vem a pergunta, COMO FAZER ISSO DE UMA FORMA MAIS ELEGANTE. while ($row = mysql_fetch_array($mySqlQuery, MYSQL_ASSOC)) { printf('%s','<tr>'); for ($index = 0; $index < count($metaInformationVector); $index++){ echo '<td>'.$row[$metaInformationVector[$index]].'</td>'; } printf('%s','</tr>'); } //========================================================================== printf('%s','</table>'); } Esse bloco funciona, mas não gostei nada do que vi, um For dentro de um While, não me parece muito normal isso. Alguem pode me ajudar? Abraço a todos! Compartilhar este post Link para o post Compartilhar em outros sites
mangakah 217 Denunciar post Postado Agosto 21, 2012 Eu acho o laço foreach mais elegante que o for. Compartilhar este post Link para o post Compartilhar em outros sites
Sandman 0 Denunciar post Postado Agosto 21, 2012 Eu acho o laço foreach mais elegante que o for. Muito obrigado pela resposta "Mangakah"! Compartilhar este post Link para o post Compartilhar em outros sites