2009-04-03 12 views

答えて

2

未テストですが、クエリが連想配列(列名がキー)で返されると思います。最初のレコードをループして列名を取得できます。

$sql = 'Select * From Test1,Test2'; 

$result = $db->fetchAll($sql, 2); 

foreach ($result[0] as $key => $value) { 
echo $key; 
... 
} 
+0

ではなく、スマート$結果が[0]の行 で1つのデータといけない必要があります

、それはエラーwiill:< –

+0

私はこのために挿入し、削除させていただきますか! –

+0

この目的のためにダミー行(3つのクエリ)を作成するのは、高価で非効率的なので、返される行の数をテストし、ゼロの場合はTillが説明するメタ技術の1つを使用します。それともベストセラーではないので、 'select *'を使わないでください。あらかじめフィールド名のみを調べてから(例えばティルのテクニックを使って)、それを使ってデータクエリを構築してください。 –

1

また、あなたが必要なすべてのメタ情報をご提供する、クエリの前または後に$db->describeTable('Test1')などを発行することができます。しかし、このクエリはかなり高価ですので、必ずレスポンスをキャッシュしてください。

また、Zend_Db_Table_Abstractに拡張されたモデルを使用している場合は、このすべての情報を既に用意しておく必要があります。この場合、保護されたプロパティ$_metadataにアクセスするだけです。持っていない場合HTH

関連する問題