Thank you I will give it a try. -----Original Message----- From: Jochem Maas [mailto:jochem@xxxxxxxxxxxxx] Sent: Friday, February 17, 2006 9:24 AM To: Mark Steudel Cc: php-general@xxxxxxxxxxxxx Subject: Re: array_map help Mark Steudel wrote: > I've got the following code and I am not doing something right. Either > my function is wrong, or the way Im using array_map is wrong, as > slashes are still making it into the data, and the asdf iosn't getting > appended to each value. I rewrote what you had like so: <?php function detectMGQ($value) { //return get_magic_quotes_gpc() ? stripslashes($value): $value; return $value."-TEST"; } $clean = array( "name" => "name", "email" => "email", "username" => "username", "accesslevel" => "accesslevel", "status" => "status", ); $field_values = array_map( "detectMGQ", $clean ); var_dump($field_values); ?> and it adds '-TEST' to every value as expected. not sure whats going wrong with your code exactly by I have got some general comments... (maybe the code I rewrote helps you to figure otu what was/is going wrong.) > > Thanks, Mark > > > > // function to remove stripped slashes function detectMGQ($value) { > // Stripslashes > if (get_magic_quotes_gpc()) { > $value = stripslashes($value); > } > > // added in to detect if this function is working > $value .= $value.'asdf'; if $value equals "ABC" then it would equal "ABCABCasdf" aftyer that last line of code was run. > > return $value; > } > > // construct field and value pairs into array > $field_values = array( 'name' => "$clean[name]", > 'email' => > "$clean[email]", yuou don't need to wrap $clean[email] in quotes - it's waste of time+cpu BUT you should always delimit the array key with quotes because it is a string not a constant (or does you code actually define a constant named 'email'?) i.e. "$clean[email]" is better off being $clean['email'] > 'username' => > "$clean[username]", > 'accesslevel' => > "$clean[accesslevel]", > 'status' => > "$clean[status]", > 'password' => > base64_encode(rc4($clean[password1])) ); > > > // walk through the values and strip out the slashses $field_values = > array_map( "detectMGQ", $field_values ); > -- PHP General Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php