![]() |
|
|
Thread Tools |
|
#1
|
||||
|
||||
|
The difference between mysql_fetch_array and $db->fetch_array?
I have a script which works perfectly with mysql_fetch_array($result), however, when switching it to $db->fetch_array($result) it does not work. It does not give an error, it simply does not return a result.
Is there something fundamentally different between vbulletin's database class fetch_array and mysql_fetch_array? (All other database class functions are working just fine... I have query_read within the same function and it works perfectly) No members have liked this post.
|
|
#2
|
|||
|
|||
|
I read somewhere that $db->fetch_array() uses fewer resources than mysql_fetch_array() and mysql_fetch_assoc(), but I looked at the code in class_core.php recently, and I think I remember seeing that it was merely a difference of semantics.
Then again, I'm no expert. ![]() No members have liked this post.
|
|
#3
|
||||
|
||||
|
It is simply a wrapper to the mysql_fetch_array function. If you are programming a vBulletin modification, you should use $db->fetch_array() to follow vBulletin's coding standards.
Can you post the two lines of code with mysql_fetch_array and $db->fetch_array? No members have liked this post.
|
|
#4
|
||||
|
||||
|
I actually was able to find a solution by using $db->fetch_row. The problem was that I was using numeric keys for certain result sets (which was something I would have prefered not to change because it was quite useful.)
Oddly enough $db->fetch_array does not appear to be fully inter-changable with mysql_fetch_array in this regard. But as I said $db->fetch_row worked perfectly in those specific cases. No members have liked this post.
|
|
#5
|
||||
|
||||
|
Abstraction. Since $db->fetch_array is wrapper, if you changed your database, mysql version, implementation details or wanted to add extra behaviour, $db->fetch_array provides a way to do so, since all the code would use an abstraction and not the direct mysql code.
Meaning... it would be a best practice to use $db->fetch_array if you are coding for Vbulletin
Originally Posted by Attilitus
It's actually the equivalent of calling:
mysql_fetch_array($result, MYSQL_ASSOC) and not plain mysql_fetch_array
__________________
Try MySmilies Mod - User-based, custom smilies for each user CemZoo.com - Anime Community CemZoo Forums - Anime Forums No members have liked this post.
Last edited by Kentaurus : 21 Jan 2007 at 20:11. Reason: Automerged Doublepost |
|
#6
|
||||
|
||||
|
Ha ha... I was never considering NOT using the vbulletin database class. I was just trying to find the right parameter that I needed. Certainly it is alright to use vbulletin's databaseclass function $db->fetch_row. Correct?
No members have liked this post.
|
|
#7
|
||||
|
||||
|
Correct
Or rename the columns in your query. Both strategies are fine.
__________________
Try MySmilies Mod - User-based, custom smilies for each user CemZoo.com - Anime Community CemZoo Forums - Anime Forums No members have liked this post.
|
![]() |
«
Previous Thread
|
Next Thread
»
| Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) |
| Thread Tools | |
|
|
| New To Site? | Need Help? |
All times are GMT. The time now is 03:49.




