Функции PHP 2 отображают результаты - PullRequest
0 голосов
/ 31 июля 2011

Я хочу две функции. Первая функция хранит информацию, а вторая отображает информацию. Как получить вторую функцию для отображения всего, что хранится в $ info_id и $ info_title?

 function get_info()
 {
   $dbc = get_dbc();
   $info = mysqli_query($dbc, "SELECT info_id, info_title FROM text") or die("Error: ".mysqli_error($dbc));
   while ($info_row = mysqli_fetch_array($info))
   {
     $info_id = $info_row['info_id'];
     $info_title = $info_row['info_title'];
   }
 }

Ответы [ 2 ]

0 голосов
/ 31 июля 2011

Вы можете разделить эту функцию на две, используя следующий подход:

function get_info()
{
  $result = array();

  $dbc = get_dbc();
  $info = mysqli_query($dbc, "SELECT info_id, info_title FROM text") or die("Error: ".mysqli_error($dbc));

  while ($info_row = mysqli_fetch_array($info))
  {
    $result[] = $info_row;
  }

  mysqli_free_result($info); // it is good practice to free the result yourself
  return $result;
}

function display_info(array $result)
{
  foreach ($result as $info_row) {
    echo 'id: ' . $info_row['info_id'] . "\n";
    echo 'title: ' . $info_row['info_title'] . "\n";
  }
}

Затем вы можете вызывать функции следующим образом:

$info = get_info();
// do stuff
display_info($info);
0 голосов
/ 31 июля 2011

Если вы хотите сохранить его, добавьте извлеченные массивы в массив:

function get_info() {
    $dbc = get_dbc();
    $info = mysqli_query($dbc, "SELECT info_id, info_title FROM text") or die("Error: ".mysqli_error($dbc));
    $results = array();
    while ($info_row = mysqli_fetch_array($info)) {
        $results[] = $info_row;
    }
    return $results;
}

Или, если вы хотите просмотреть данные, вы можете распечатать массив.

print_r(get_info());
...