note 89436 added to function.array-flip

From: 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

« previous php.notes (#151604) next »