note 89436 added to function.array-flip
| From: | dan at aoindustries dot com | Date: | Sat, 07 Mar 2009 20:48:42 +0000 |
| Subject: | note 89436 added to function.array-flip | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-151604@lists.php.net to get a copy of this message | ||
From an algorithmic efficiency standpoint, building an entire array of lengths to then sort to only
retrieve the longest value is unnecessary work. The following should be O(n) instead of O(n log n).
It could also be:
function get_longest_value($array) {
// Some don't like to initialize, I do
$longest = NULL;
$longestLen = -1;
foreach ($array $value) {
$len = strlen($value);
if($len>$longestLen) {
$longest = $value;
$longestLen = $len;
}
}
$longest = str_replace("\r\n", "\n", $longest);
if (get_magic_quotes_gpc()) { return stripslashes($longest); }
return $longest;
}
----
Server IP: 64.71.164.2
Probable Submitter: 67.177.66.203
----
Manual Page -- http://www.php.net/manual/en/function.array-flip.php
Edit -- https://master.php.net/note/edit/89436
Del: integrated -- https://master.php.net/note/delete/89436/integrated
Del: useless -- https://master.php.net/note/delete/89436/useless
Del: bad code -- https://master.php.net/note/delete/89436/bad+code
Del: spam -- https://master.php.net/note/delete/89436/spam
Del: non-english -- https://master.php.net/note/delete/89436/non-english
Del: in docs -- https://master.php.net/note/delete/89436/in+docs
Del: other reasons-- https://master.php.net/note/delete/89436
Reject -- https://master.php.net/note/reject/89436
Search -- https://master.php.net/manage/user-notes.php