PHPで実行しているクエリがあります。DBはSQLServer2008です。PHPでのクエリは次のとおりです。
"SELECT * FROM applicants WHERE applicants.families_id = '{$family_array['id']}'";
$family_array
idが。と照合される場所families_id
。その結果、1つの行が表示されます。関数を使用して、その行をPHPの配列に保存しmssql_fetch_array
ます。この配列を出力すると、次のようになります。
Array
(
[0] => 26
[id] => 21
[1] => 21
[user_id] => 21
[2] => Kristi
[mother_fname] => Kristi
[3] => Lochala
[mother_lname] => Lochala
[4] => Nathan
[father_fname] => Nathan
[5] => Lochala
[father_lname] => Lochala
[6] =>
[app_emergency] =>
[7] =>
[upload_mother_passport] =>
[8] =>
[upload_mother_visa] =>
[9] =>
[upload_father_passport] =>
[10] => 0
[upload_father_visa] => 0
[11] => nathan-lochala
[user_added_username] => nathan-lochala
[12] => Mar 19 2013 01:00:37:660PM
[user_added_date] => Mar 19 2013 08:48:00:000AM
[13] => 192.168.88.15
[user_added_ip] => 192.168.88.15
[14] =>
[user_updated_username] =>
[15] =>
[user_updated_date] =>
[16] =>
[user_updated_ip] =>
[17] => 21
[18] => nathan-lochala
[username] => nathan-lochala
[19] => b9a234cb37ce2b75d77befecabfa650e39489e0b
[hash_password] => b9a234cb37ce2b75d77befecabfa650e39489e0b
[20] => Nathan
[fname] => Nathan
[21] => Lochala
[lname] => Lochala
[22] => 2
[num_child] => 2
[23] => Mar 19 2013 08:48:00:000AM
[24] => 192.168.88.15
[25] =>
[26] =>
[27] => nathan-lochala@shk.qsi.org
[email] => nathan-lochala@shk.qsi.org
[28] => parent
[access] => parent
)
気付いた場合、index [0]
は対応するキー値と一致しません[id]
。どうしてこれなの?SQL Server Managerを使用してまったく同じクエリを実行したところ、期待どおりに実行されましたが、PHPでその配列をフェッチすると、最初のキー値のみが歪んでしまいます。テーブルを作り直す以外に、考えられることはすべて試しました。何か案は?
編集:mssql_fetch_assoc()を実行すると、次の結果が得られます。
Array
(
[id] => 21
[user_id] => 21
[mother_fname] => Kristi