arrayCompact(arr [, delim])
Last updated March 2, 2007
Version: 1 | Requires: ColdFusion MX | Library: DataManipulationLib
Description:
This function is designed to remove undefined postions from an array. Will not work in CF5, and would not recommend using it for large arrays. Optional argument to pass in delimiter (default is Pipe symbol).
Return Values:
Returns an array.
Example:
<cfset tmp=arraynew(1)>
<cfset tmp[1]="a">
<cfset tmp[3]="c">
<cfset tmp[4]="d">
<!--- let's see it in all it's un-glory --->
<cfdump var="#tmp#" label="original array">
<!--- compacting - grindgrindgrind --->
<cfset newTmp=arrayCompact(tmp)>
<!--- show me --->
<cfdump var="#Newtmp#" label="New Compacted array">
<!--- now, the pudding --->
<cfoutput>
Looping new Array<br />
<cfloop from="1" to="#arraylen(newTmp)#" index="i">
index #i# = #newTmp[i]#<br />
</cfloop>
</cfoutput>
Parameters:
| Name | Description | Required |
|---|---|---|
| arr | Array to compact. | Yes |
| delim | Temporary list delimiter. Defaults to |. | No |
Full UDF Source:
<cfscript>
/**
* Used to remove missing positions from an array.
*
* @param arr Array to compact. (Required)
* @param delim Temporary list delimiter. Defaults to |. (Optional)
* @return Returns an array.
* @author M Gillespie for HOUCFUG (houcfug@yahoogroups.com)
* @version 1, March 2, 2007
*/
function arrayCompact(arr) {
var delim="|";
if(arraylen(arguments) gt 1) {delim=arguments[2];}
return listtoarray(arraytolist(arr,delim),delim);
}
</cfscript>
Search CFLib.org
Latest Additions
Tayo Akinmade added
arrayTrim
11 day(s) ago
Will Belden added
longTime
17 day(s) ago
James Sleeman added
quickSort
27 day(s) ago
Ben Forta added
GetHostAddress
29 day(s) ago
Top Rated
EksporSQLData
Rated 5.0, 16 time(s)
backupDatabase
Rated 5.0, 13 time(s)
indentXml
Rated 5.0, 10 time(s)
generateSsccAsn
Rated 5.0, 4 time(s)