deleteEmptyFolder(path)
Last updated May 30, 2011
Version: 1 | Requires: CF6 | Library: FileSysLib
	Description: 
	Arguments:
1. Path : folder physical path for which you want to clean empty directory.
Function return boolean value indicating directory empty or not and if empty it will be deleted.
	Return Values: 
	Returns a boolean.
Example:
<cfset deleteEmptyFolder('#expandPath("/temp/")#')>
Parameters:
| Name | Description | Required | 
|---|---|---|
| path | Path to delete (if empty). | Yes | 
Full UDF Source:
<!---
 Delete empty folder from given path.
 
 @param path      Path to delete (if empty). (Required)
 @return Returns a boolean. 
 @author Pritesh (pritesh@thecfguy.com) 
 @version 1, May 30, 2011 
--->
<cffunction name="deleteEmptyFolder" access="public" output="false" returntype="boolean">
    <cfargument name="path" required="true" type="string" />
    <cfset var qList="">
    <cfset var qDir = "">
    <cfset var qFiles = "">
    <cfset var isEmpty = 1>
    <!--- List Directory --->
    <cfdirectory action="list" directory="#arguments.path#" recurse="no" name="qList">
    <!--- get sub directory list --->
    <cfquery name="qDir" dbtype="query">
        select * from qList where type='Dir'
    </cfquery>
    <!--- Call recursive function to check directory empty or not --->
    <cfloop query="qDir">
        <!--- If sub directory not empty mark current directory as not empty. --->
        <cfif not deleteEmptyFolder(qDir.directory & "\" & qDir.name)>
            <cfset isEmpty=0>
        </cfif>
    </cfloop>
    <!--- Check for file exists in current directory --->
    <cfquery name="qFiles" dbtype="query">
        select * from qList where type='File'
    </cfquery>
    <!--- If file exists mark as not empty --->
    <cfif qFiles.recordCount gt 0>
        <cfset isEmpty = 0>
    </cfif>
    <!--- If current directory empty then delete it --->
    <cfif isEmpty>
        <cfdirectory action="delete" recurse="false" directory="#arguments.path#">
    </cfif>
    <!--- Return empty status for current directory --->
    <cfreturn isEmpty>
</cffunction>
Search CFLib.org
Latest Additions
									
									Raymond Camden added 
									QueryDeleteRows 
									November 04, 2017
								
								
									
									Leigh added 
									nullPad 
									May 11, 2016
								
								
									
									Raymond Camden added 
									stripHTML 
									May 10, 2016
								
								
									
									Kevin Cotton added 
									date2ExcelDate 
									May 05, 2016
								
								
									
									Raymond Camden added 
									CapFirst 
									April 25, 2016