Функция PHP, возвращающая mysql_fetch_assoc (), приводит к массиву на основе индекса? - PullRequest
1 голос
/ 18 июня 2011

это мой первый пост здесь, в прошлом я обнаружил, что все мои вопросы уже решены.Не в этот раз, поэтому, пожалуйста, помогите мне: -)!

  • Почему $returned_assoc_arr содержит массив на основе индекса вместо ассоциативного?
  • Я также пробовал со ссылкой public function &fetch_assoc($res) но без везения?
  • Есть ли способ это исправить?Мне действительно нужно, чтобы это был ассоциативный массив.

Надеюсь, я все объяснил достаточно хорошо, и некоторые старшие PHP-кодеры могут помочь с этим.

Здесь мы рассмотрим фрагменты кода.:

file1.php

<code>public function fetch_assoc($res) {
  $assoc_arr = mysql_fetch_assoc($res);
  echo "<pre>";
  print_r($assoc_arr);
  echo "
"; return $ assoc_arr;}

file2.php

<code>$returned_assoc_arr = $foo->fetch_assoc($res);
echo "<pre>";
print_r($returned_assoc_arr);
echo "
";

Вывод из file2.php:

Array
(
    [id] => 42
    [Client] => 1
    [DebtorAccountNumber] => 1234512345
    [OrderDate] => 2001-04-03 02:00:00
    [Status] => 1
    [Comment] => this is a comment
    [CreatedBy] => 1
    [Reference] => 2083137729
)

Array
(
    [0] => 42
    [1] => 1
    [2] => 1234512345
    [3] => 2001-04-03 02:00:00
    [4] => 1
    [5] => this is a comment
    [6] => 1
    [7] => 2083137729
)

1 Ответ

1 голос
/ 18 июня 2011

Метод fetch_assoc является функцией-членом класса.(он вызывается для содержащего объекта, который должен быть создан вначале)

то, что вы используете в file2 - это обычная функция fetch_assoc, которая определенно отличается от функции, описанной в file1.

...