ZF\Apigility\Admin\Utility::recursiveDelete PHP Method

recursiveDelete() public static method

Recursive delete
public static recursiveDelete ( string $dir ) : boolean
$dir string
return boolean
    public static function recursiveDelete($dir)
    {
        if (false === ($dh = @opendir($dir))) {
            return false;
        }
        while (false !== ($obj = readdir($dh))) {
            if ($obj == '.' || $obj == '..') {
                continue;
            }
            if (!@unlink($dir . '/' . $obj)) {
                self::recursiveDelete($dir . '/' . $obj);
            }
        }
        closedir($dh);
        @rmdir($dir);
        return true;
    }

Usage Example

 /**
  * Delete a DB-Connected service
  *
  * @param  DbConnectedRestServiceEntity $entity
  * @param  bool $recursive
  * @return true
  */
 public function deleteService(DbConnectedRestServiceEntity $entity, $recursive = false)
 {
     $this->restModel->deleteService($entity->controllerServiceName);
     $this->deleteDbConnectedConfig($entity);
     if ($recursive) {
         $reflection = new ReflectionClass($entity->entityClass);
         Utility::recursiveDelete(dirname($reflection->getFileName()));
     }
     return true;
 }
All Usage Examples Of ZF\Apigility\Admin\Utility::recursiveDelete