public function fromString($fileName)
    {
        $fileNameArray = $fileName ? explode('.', $fileName) : array();
        if(!$fileNameArray || count($fileNameArray) < 2){
            throw new Exception\InvalidArgumentException('File name not correct');
        }

        $fileExt = array_pop($fileNameArray);
        $fileNameMain = implode('.', $fileNameArray);
        $fileNameArray = explode(',', $fileNameMain);
        if(!$fileExt || !$fileNameArray || !$fileNameArray[0]){
            throw new Exception\InvalidArgumentException('File name not correct');
        }

        //remove empty elements
        $fileNameArray = array_filter($fileNameArray);
        $fileNameMain = array_shift($fileNameArray);
        $this->setExtension($fileExt);
        $this->setFilename($fileNameMain);

        $args = $fileNameArray;
        $argMapping = $this->argMapping;
        $params = array();
        foreach($args as $arg){
            if(!$arg){
                continue;
            }
            if(strlen($arg) < 3 || strpos($arg, '_') !== 1){
                continue;
            }
            $argKey = $arg{0};
            if(isset($argMapping[$argKey])){
                $arg = substr($arg, 2);
                if($arg !== ''){
                    $params[$argMapping[$argKey]] = $arg;
                }
            }
        }

        $this->fromArray($params);
        return $params;
    }
public function fromString($fileName)
    {
        $fileNameArray = $fileName ? explode('.', $fileName) : array();
        if(!$fileNameArray || count($fileNameArray) < 2){
            throw new Exception\InvalidArgumentException('File name not correct');
        }

        $fileExt = array_pop($fileNameArray);
        $fileNameMain = implode('.', $fileNameArray);
        $fileNameArray = explode(',', $fileNameMain);
        if(!$fileExt || !$fileNameArray || !$fileNameArray[0]){
            throw new Exception\InvalidArgumentException('File name not correct');
        }

        //remove empty elements
        $fileNameArray = array_filter($fileNameArray);
        $fileNameMain = array_shift($fileNameArray);
        $this->setExtension($fileExt);
        $this->setFilename($fileNameMain);

        $args = $fileNameArray;
        $argMapping = $this->argMapping;
        $params = array();
        foreach($args as $arg){
            if(!$arg){
                continue;
            }
            if(strlen($arg) < 3 || strpos($arg, '_') !== 1){
                continue;
            }
            $argKey = $arg{0};
            if(isset($argMapping[$argKey])){
                $arg = substr($arg, 2);
                if($arg !== ''){
                    $params[$argMapping[$argKey]] = $arg;
                }
            }
        }

        $this->fromArray($params);
        return $params;
    }
public function fromString ( $ fileName ) { $ fileNameArray = $ fileName ? explode ( '.' , $ fileName ) : array ( ) ; if ( ! $ fileNameArray || count ( $ fileNameArray ) < 2 ) { throw new Exception \ InvalidArgumentException ( 'File name not correct' ) ; } $ fileExt = array_pop ( $ fileNameArray ) ; $ fileNameMain = implode ( '.' , $ fileNameArray ) ; $ fileNameArray = explode ( ',' , $ fileNameMain ) ; if ( ! $ fileExt || ! $ fileNameArray || ! $ fileNameArray [ 0 ] ) { throw new Exception \ InvalidArgumentException ( 'File name not correct' ) ; } //remove empty elements $ fileNameArray = array_filter ( $ fileNameArray ) ; $ fileNameMain = array_shift ( $ fileNameArray ) ; $ this -> setExtension ( $ fileExt ) ; $ this -> setFilename ( $ fileNameMain ) ; $ args = $ fileNameArray ; $ argMapping = $ this -> argMapping ; $ params = array ( ) ; foreach ( $ args as $ arg ) { if ( ! $ arg ) { continue ; } if ( strlen ( $ arg ) < 3 || strpos ( $ arg , '_' ) !== 1 ) { continue ; } $ argKey = $ arg { 0 } ; if ( isset ( $ argMapping [ $ argKey ] ) ) { $ arg = substr ( $ arg , 2 ) ; if ( $ arg !== '' ) { $ params [ $ argMapping [ $ argKey ] ] = $ arg ; } } } $ this -> fromArray ( $ params ) ; return $ params ; }
Populate from filename string

@param  string $string
@return void
Populate from filename string