2011-09-17 4 views
0

ezSQLのように各行をオブジェクトとして取得できますか?例えば 、ezSQLリターン(しますprint_r($ sqlを):?。各行はadodb内のオブジェクトですか?

Array (
    [0] => stdClass Object (
     [click_time] => 2011-09-12 17:30:06 
     [referrer] => direct 
     [user_agent] => Mozilla/5.0 
     [country_code] => EN 
    ) 
    [1] => stdClass Object (
     [click_time] => 2011-09-14 23:45:35 
     [referrer] => direct 
     [user_agent] => Mozilla/5.0 
     [country_code] => EN 
    ) 
) 

しかし、どのようにオブジェクトを自分で構築しなければならないので、ADODBで

答えて

0

ADODBは、resourcesではなく、オブジェクトを使用していることを行うに

ADODBとの対話に使用しているバージョンや機能がわからない場合、これは基本的な考えであり、フィールドの事前知識が必要です(一般的に可能なリソース自体からフィールドリストを取得しない限り)。

$_GET['id'] = check_input($_GET['id']); 
$query1 = "SELECT * FROM stats WHERE shorturl='{$_GET['id']}'"; 
$result1 = $myDB->Execute($query1) or die(GetDbError($myDB->ErrorMsg())); 

$fields = array('click_time', 'referrer', 'user_agent', 'country_code', ...); 
$obj = new stdClass; 
foreach($fields as $field) $obj->$field = $result1->Fields($field); 

これは、オブジェクトを作成し、そのオブジェクトのメンバ変数(データベースのフィールド名で名前が付けられます)を作成し、そのメンバ変数をそのデータベースフィールドに返される値に設定します。

関連する問題