File name sanitizer
This is a way to sanitize a string to be used as file name or URL path etc. by removing unwanted characters or replacing them with a hyphen or similar.
	It takes a string like:
	Daily SimpliVity Backup 12/16/2018 02:00:215
	and converts it into:
	daily-simplivity-backup-12-16-2018-02-00-25
<?php
$file_name = preg_replace( '/[^a-z0-9]+/', '-', strtolower( $url ) );
?>Source: https://stackoverflow.com/a/42908256/1215633
An example of a function
<?php
       /**
     * Create package URL based on name and id of segment, matrix, area and package
     * Sub matrix and sub area gets precedence
     * @param type $package
     * @return type
     */
    public function createPackageUrl($package){
        
        $pattern = array('/å/','/ä/','/ö/','/Å/','/Ä/','/Ö/','/æ/','/ø/','/å/','/Æ/','/Ø/','/Å/','/ü/', '/[^a-z0-9]+/');
        $replace = array('a','a','o','a','a','o','ae','o','a','ae','o','a','u', '-');
        $path = array();
        if(!empty(trim($package['segment_title']))){
            $path[] = preg_replace( $pattern, $replace, strtolower(trim($package['segment_title'])))."_".$package['ixSegment'];
        }else{
            $path[] = "segment_0";
        }
        if(!empty(trim($package['matrix_sub_title']))){
            $path[] = preg_replace( $pattern, $replace, strtolower(trim($package['matrix_sub_title'])))."_".$package['ixSubMatrix'];
        }else{
            if(!empty(trim($package['matrix_title']))){
            $path[] = preg_replace( $pattern, $replace, strtolower(trim($package['matrix_title'])))."_".$package['ixMatrix'];
            }else{
                $path[] = "matrix_0";
            }
        }
        if(!empty(trim($package['area_sub_title']))){
            $path[] = preg_replace( $pattern, $replace, strtolower(trim($package['area_sub_title'])))."_".$package['ixSubArea'];
        }else{
            if(!empty(trim($package['area_title']))){
            $path[] = preg_replace( $pattern, $replace, strtolower(trim($package['area_title'])))."_".$package['ixArea'];
            }else{
                $path[] = "area_0";
            }
        }
        
        $path[] = preg_replace( $pattern, $replace, strtolower(trim($package['package_title'])))."_".$package['id'];
        return "/".implode("/", $path);
    }
        
        // /[SEGMENT]_9/[SUB-MATRIX|MATRIX]_1/[SUB-AREA|AREA]_1/[PACKAGE-TITLE]_[ixPackage]
        // [package_url] => /humanbiologi_4/isotopanalyser_39/isotoper_20/isotopanalyser-humanbiologi_5740
        
        /* $package
        [id] => 5740
        [matrix_title] => Humanbiologi
        [area_title] => Isotoper
        [matrix_sub_title] => Isotopanalyser
        [area_sub_title] =>  
        [segment_title] => Humanbiologi 
        [ixArea] => 5
        [ixMatrix] => 35
        [ixSegment] => 2
        [ixSubMatrix] => 18
        [ixSubArea] => 0
        */
//Tests        
//        $package['segment_title'] = " ";
//        unset($package['segment_title']);
//        $package['matrix_sub_title'] = " ";
//        $package['matrix_title'] = "-";
//        $package['package_title'] = "one-two--three---underline_connection";
?>Knowledge keywords: 
