Is there a more efficient way to code this than what I have?


Posted on 16th Feb 2014 07:03 pm by admin

I have three associative arrays.

$combinedSettings
$userSettings
$defaultSettings

My function must combine the key and value from $userSettings and $defaultSettings into the $combinedSettings array.

$userSettings will always contain more keys than $defaultSettings will ever have.

So every once in a while there is an extra key and of course it's value in the $userSettings array than in the $defaultSettings array.

If the value of a key in $userSettings is empty we then use the value for the same key in the $defaultSettings. Every key in $defaultSettings will always be present in $userSettings. $userSettings just adds a few extra keys and their values.

Below is my working code but I am wondering if there is some way to make it more efficient, faster, perhaps with less code. It looks rather clutzy to me. Rather bloated.

Code: while (list($userKey, $userValue) = each($userSettings)) {
while ($defaultKey = key($defaultSettings)) {
$defaultValue = current($defaultSettings);
if ($userKey === $defaultKey) {
if ($userValue === "") {
$combinedSettings[$defaultKey] = $defaultValue;
} else {
$combinedSettings[$userKey] = $userKey;
}
next($defaultSettings); // to allow key() to work properly above.
} else { // add userSettings setting and value to combinedSettings and leave
// defaultSettings where it is.
$combinedSettings[$userKey] = $userValue;
}
break;
}
}

Thanks.

No comments posted yet

Your Answer:

Login to answer
288 Like 7 Dislike
Previous forums Next forums
Other forums

Selecting an "empty" date formated field
How do you select an "empty" date field? I've tried the few ways I can think.
SQL> select

php/xmlrpc class issue
I am working on xml-rpc in php to start with.

I have a class that only has variables defined

why does my session end?
my connect.php starts the session just so you know
i can navigate arround my site fine except whe

my two tables
table1 : col1 = topicid , col2 = topic

table2 : col1 = sentid, col2 = sentence

Cod

EU VAT Package 2010
Does any one know whether SAP will be developing new reporting functionality due the new VAT rules t

Xml parsing
I need a suggestion about parsing xml with multiply parts like pervious...
i.e. different device

Does deleting the spmlog directory critical?
Hi Everyone,

Please, hope you could help me. We're having problems with the SAP backup. I

Image DPI
Hi.

I allow users to upload images, the user then is able to adjust several settings for the

 formating when pulling data from a mysql database 
Ok so Im not to sure if this is the right thread to post in but here is my catch 22 issue.

I

need help in update query
i create a form for update. there are 8 columns in my mysql table. on my main page all the data is r

Sign up to write
Sign up now if you have flare of writing..
Login   |   Register
Follow Us
Indyaspeak @ Facebook Indyaspeak @ Twitter Indyaspeak @ Pinterest RSS



Play Free Quiz and Win Cash