UGN Security Forums
My ProfileMember DirectoryLogin
Search our ForumsView our FAQView our Site Rules
View our CalendarView our Active TopicsGo to our Main Page

UGN Security Store
 

Network Sites UGN Security, The GoNix Initiative, Elite Web Gamers, Back of the Web, EveryDay Helper, VNC Web Design & Development
September
Su M Tu W Th F Sa
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
Sponsored Links
Latest Postings
The History Thread...
by Gremelin
09/18/14 09:42 AM
Doom 3
by Cyrez
09/11/14 08:58 PM
Latest Reviews
Topic Options
Rate This Topic
#18083 - 01/28/04 07:28 AM Which is better, filter in a query or filter an array
§intå× Offline


*****

Registered: 12/03/02
Posts: 3255
Loc: Maryland
I recently was asked to make a search that filtered on 5 different variables. Now that isn't that hard. in MySQL it would be something like

SELECT * FROM TABLE_NAME_HERE WHERE This = '$That' "
." and This2 = '$That2'"
." and This3 = '$That3"
."";

You get the idea.

Problem was not allways would all five variables be used.(is that proper english?) So I found myself researching multi-dimensional arrays and using that instead.

http://www.php.net/manual/en/function.array.php

Now the cool thing about using arrays is I found it to be pretty close to using a database. I have used arrays befor, but never with more than 3 demesions. Using PHP What I did was search the database on the only variable that would allways be used. Then I filtered the array from there. I removed the unwated array elements using unset ()

http://www.php.net/manual/en/function.unset.php

Then re-ordered the array to be able to get its results using array_values()

http://www.php.net/manual/en/function.array-values.php

However, after further reading I find array_values() dose not overwrite the old array, instead it creates a new one. Now with a huge array this could be a memory issue could it not?

I am looking for any thoughtful feed back on this as to what a efficent work around might be.
_________________________
My New site OpenEyes

Top
Sponsored Links
      
#18084 - 01/28/04 07:54 AM Re: Which is better, filter in a query or filter an array
Gremelin Offline

Community Owner
*****

Registered: 02/28/02
Posts: 7193
Loc: Portland, OR; USA
array :x
_________________________
Donate to UGN Security here.
UGN Security, Back of the Web, Elite Web Gamers & VNC Web Design Owner

Top
#18085 - 01/28/04 01:35 PM Re: Which is better, filter in a query or filter an array
Scalli0n Offline
Junior Member

Registered: 08/01/02
Posts: 68
http://www.zend.com/zend/tut/tutorial-ferrara1.php

Wrote that tutorial for zend a bit back.

Top
#18086 - 01/29/04 12:20 AM Re: Which is better, filter in a query or filter an array
pergesu Offline
UGN Elite Poster

Registered: 03/14/02
Posts: 1136
Loc: Pimpin the Colorizzle
Don't know enough about PHP to provide a definitive answer, but based on general programming theory, I think it's safe to say that using the database would be best. Think about the differences in implementation. In the database, you have a system which has had thousands of hours put into it, and is incredibly optimized. Compare that to whatever algorithm you come up to filter the results in the array. I guarantee you the database is going to be better. Furthermore, the database is implemented in native code, so it'll run far more quickly than a similar algorithm done in an interpretted language (PHP). Combine the database's caching mechanisms...and it's a lot faster and smarter to just let the database handle that.

Top

Moderator:  §intå×, Gremelin 
Featured Member
Registered: 03/02/02
Posts: 136
Forum Stats
2148 Members
46 Forums
34520 Topics
69690 Posts

Max Online: 1567 @ 04/25/10 02:20 AM
Top Posters
UGN Security 27682
Gremelin 7193
§intå× 3255
SilentRage 1273
Ice 1146
pergesu 1136
Infinite 1041
jonconley 955
Girlie 908
unreal 860
Newest Members
Tim050, Gecko666, defghi795767, Devo60, ali
2148 Registered Users
Who's Online
0 registered (), 250 Guests and 279 Spiders online.
Key: Admin, Global Mod, Mod
Latest News


Donate
  Get Firefox!
Get FireFox!