Как сохранить строки в массиве и распечатать на PHP с использованием ODBC? - PullRequest
3 голосов
/ 02 апреля 2010

У меня есть следующее:

while($myRow = odbc_fetch_array( $result )){ <--lots of rows
    $thisResult['name'] = $myRow["name"] ;
    $thisResult['race'] = $myRow["race"] ;
    $thisResult['sex'] = $myRow["sex"];
    $thisResult['dob'] = $myRow["dob"];
}

Я не могу понять, как распечатать это обратно.

Я хочу получить каждую строку и перебрать каждую строку в массиве, как устройство чтения данных. Я не уверен, что делать. Я не хочу делать эхо в то время. Мне нужно иметь возможность распечатать его в другом месте. Но я не думаю, что я сделал это прямо здесь, чтобы иметь возможность напечатать это позже.

Я тоже пробовал, вот это:

while($myRow = odbc_fetch_array( $result )){ <--lots of rows
     print($thisResult[$myRow["name"]] = $myRow);
}

Я тогда попробовал:

while($myRow = odbc_fetch_array( $result )){ <--lots of rows
    print (odbc_result($myRow,"name"));
}

но получил ошибку.

Спасибо за любую помощь.

РЕДАКТИРОВАТЬ: когда я делаю это:

while($myRow = odbc_fetch_array( $result )){
    print ($myRow["name"]);
}

Я получаю неопределенное имя индекса. В основном меня интересует сохранение в массиве, но сначала я должен быть в состоянии сделать это в цикле.

Ответы [ 2 ]

8 голосов
/ 02 апреля 2010

Объявите массив ранее и присвойте ему значения:

$rows = array();

while($myRow = odbc_fetch_array( $result )){ <--lots of rows
    $rows[] = $myRow;
}

Затем вы можете распечатать его, например. таким образом:

foreach($rows as $row) {
   foreach($row as $key => $value) {
       echo $key . ': '. $value;
   }
}

или как хотите.

Вам не нужно обращаться и назначать $thisResult['name'] = $myRow["name"] в цикле while, поскольку $myRow уже является массивом. Вы просто копируете значения, которые не нужны.


Вы говорите, что у вас много строк. В зависимости от того, что вы действительно хотите сделать с данными, может быть лучше поместить все эти функции в цикл while, чтобы избежать создания массива.

0 голосов
/ 02 апреля 2010

Как насчет чего-то вроде:

$output = '';
while($myRow = odbc_fetch_array( $result )) {
    $output = $output."Your name is {$myRow["name"]} and your race is {$myRow["race"]}\n";
}

// print output later...
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...