Jump to content


Photo

Array problem


  • Please log in to reply
8 replies to this topic

#1 hvle

hvle
  • Members
  • PipPipPip
  • Advanced Member
  • 667 posts
  • Locationmelbourne, Australia

Posted 06 July 2006 - 03:28 PM

hi guys,

I have 2 ways of storing record in an array, and I wanna know which one is better (efficiency).

method 1:
$book[] = array('name' => 'name1', 'email' => 'email1');
$book[] = array('name' => 'name2', 'email' => 'email2');
$book[] = array('name' => 'name3', 'email' => 'email3');

method 2:
$book['name'] = array('name1', 'name2', 'name3');
$book['email'] = array('email1', 'email2', 'email3');


thank you very much for any suggestion

Life's too short for arguing.

#2 .josh

.josh
  • Staff Alumni
  • .josh
  • 14,871 posts

Posted 06 July 2006 - 03:32 PM

personally, i'd go for method 1. 
Did I help you? Feeling generous? Buy me lunch! 
Please, take the time and do some research and find out how much it would have cost you to get your help from a decent paid-for source. A "roll-of-the-dice" freelancer will charge you $5-$15/hr. A decent entry level freelancer will charge you around $15-30/hr. A professional will charge you anywhere from $50-$100/hr. An agency will charge anywhere from $100-$250/hr. Think about all this when soliciting for help here. Think about how much money you are making from the work you are asking for help on. No, we do not expect you to pay for the help given here, but donating a few bucks is a fraction of the cost of what you would have paid, shows your appreciation, helps motivate people to keep offering help without the pricetag, and helps make this a higher quality free-help community :)

#3 effigy

effigy
  • Staff Alumni
  • Advanced Member
  • 3,600 posts
  • LocationIL

Posted 06 July 2006 - 03:34 PM

I prefer a hash (associative array). I'm not sure if there are any efficiency differences; if there are, it would depend on how many records you are storing and what you are doing with them.
Regexp | Unicode Article | Letter Database
/\A(e)?((1)?ff(?:(?:ig)?y)?|f(?:ig)?)\z/

#4 Buyocat

Buyocat
  • Members
  • PipPipPip
  • Advanced Member
  • 267 posts

Posted 06 July 2006 - 04:05 PM

I'd go one step further, if you can, and make it:
books = array(book1 => array(name => Catch22, email =>someemail)...))

Looking for some easy-to-use tools?  Try these, https://sourceforge....jects/utils-php -- I made them myself.  They're distinct tools which are easy to understand and use.  See some examples uses at http://www.anotherearlymorning.com

#5 hvle

hvle
  • Members
  • PipPipPip
  • Advanced Member
  • 667 posts
  • Locationmelbourne, Australia

Posted 06 July 2006 - 04:08 PM

method 1 may seem very easy to manipulate, but I got a lot of trouble w/ sorting, and finding out duplication.

A hash method, can you explain what it is?

The # of records are reasonably small considering # of addresses in your address book, so the number is around 5 to 200.  I need to do some database operation like sorting, filtering duplication, insertion.  These operations done inside script, so no database involved.

thanks


Life's too short for arguing.

#6 hvle

hvle
  • Members
  • PipPipPip
  • Advanced Member
  • 667 posts
  • Locationmelbourne, Australia

Posted 06 July 2006 - 04:13 PM

I'd go one step further, if you can, and make it:

array(book => array(book1 => array(name => Catch22, email =>someemail)...)))

can you point out the advantage with this way cuz I can not see it.
Life's too short for arguing.

#7 Buyocat

Buyocat
  • Members
  • PipPipPip
  • Advanced Member
  • 267 posts

Posted 06 July 2006 - 04:15 PM

There are all sorts of functions of sorting/sifting through arrays.  I'll let you choose which ones suit your needs...
http://us3.php.net/array
Looking for some easy-to-use tools?  Try these, https://sourceforge....jects/utils-php -- I made them myself.  They're distinct tools which are easy to understand and use.  See some examples uses at http://www.anotherearlymorning.com

#8 effigy

effigy
  • Staff Alumni
  • Advanced Member
  • 3,600 posts
  • LocationIL

Posted 06 July 2006 - 04:25 PM

Sorting Multidimensional Arrays
Regexp | Unicode Article | Letter Database
/\A(e)?((1)?ff(?:(?:ig)?y)?|f(?:ig)?)\z/

#9 hvle

hvle
  • Members
  • PipPipPip
  • Advanced Member
  • 667 posts
  • Locationmelbourne, Australia

Posted 06 July 2006 - 04:37 PM

that's a good link http://us3.php.net/array
Thank you very much.

array_multisort, it doesn't explain much in the manual.
Life's too short for arguing.




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users