-1

SQLクエリからphpでデータを返すのに問題があります。これが私のコードです:

      public function get_audit_message($productId,$accountId)
        {
        $sql_list  ="SELECT notes
                     FROM  ".$this->tables_audit."
                     WHERE productId = '".mysql_real_escape_string($productId)."'
                     AND accountId = '".mysql_real_escape_string($accountId)."'
                     ";

        $query = $this->db->query($sql_list);
        if($query->num_rows() > 0)
            {
            $return = $query->result_array();
            return $return;
            }
        else return false;
        }

私が問題を抱えている理由は、そのままではreturn $return;正しい数の結果が返されますが、「配列」という単語しか表示されないためです。return $return[0];次に、情報の最初のエントリを正しく返すように変更した場合。

だから私がしたいのは、例えばreturn $return[*];可能であれば、すべての配列番号を選択することです。

任意の提案をいただければ幸いです。

4

2 に答える 2

1

return $return;echo()はこの関数から配列を返す正しい方法ですが、配列であるため、戻り値だけを返すことはできません。配列をエコーし​​ようとすると、文字通りの単語「配列」だけが表示されます(これにより、エラー報告をオンにした場合に表示される通知も表示されます)。

それを繰り返し処理して各配列要素を出力するか、次を使用する必要がありますimplode()

$array = $obj->get_audit_message($productId,$accountId); // However you call it
echo implode( "<br />\n", $array) . "<br />\n";

または:

$array = $obj->get_audit_message($productId,$accountId); // However you call it
foreach( $array as $el) {
    echo $el . "<br />\n";
}

上記のスニペットは両方とも、まったく同じ出力を生成します。

于 2012-08-09T15:27:00.373 に答える
0

PHP配列のコンテンツをHTMLで表示する簡単な方法がいくつかあります。

最も簡単なのは、次のようにprint_rコマンドで表示することです。

print_r ($my_array);

「適切な」フォーマットにする必要がある場合は、次のようにPREタグを追加します。

echo "<pre>";
print_r($my_array);
echo "</pre>";

またはこのように:

echo "<pre>".print_r($my_array, 1)."</pre>";

また、同様のvar_dumpおよびvar_exportPHP関数があります。

echo "<pre>";
var_dump($my_array);
echo "</pre>";

また

echo "<pre>";
var_export($my_array);
echo "</pre>";

お好みの踏み越し段を選択してください。

于 2012-08-09T15:55:15.203 に答える