concrete/src/File/Service/Zip.php
public function isNativeCommandAvailable($command)
    {
        switch ($command) {
            case 'zip':
            case 'unzip':
                break;
            default:
                return false;
        }
        if (!isset($this->availableNativeCommands[$command])) {
            $this->availableNativeCommands[$command] = false;
            if ($this->functionInspector->functionAvailable('exec')) {
                $rc = 1;
                $output = [];
                @exec($command . ' -v 2>&1', $output, $rc);
                if ($rc === 0) {
                    $stdOut = implode("\n", $output);
                    if (stripos($stdOut, 'info-zip') !== false || stripos($stdOut, 'infozip') !== false) {
                        $this->availableNativeCommands[$command] = true;
                    }
                }
            }
        }

        return $this->availableNativeCommands[$command];
    }
public function isNativeCommandAvailable($command)
    {
        switch ($command) {
            case 'zip':
            case 'unzip':
                break;
            default:
                return false;
        }
        if (!isset($this->availableNativeCommands[$command])) {
            $this->availableNativeCommands[$command] = false;
            if ($this->functionInspector->functionAvailable('exec')) {
                $rc = 1;
                $output = [];
                @exec($command . ' -v 2>&1', $output, $rc);
                if ($rc === 0) {
                    $stdOut = implode("\n", $output);
                    if (stripos($stdOut, 'info-zip') !== false || stripos($stdOut, 'infozip') !== false) {
                        $this->availableNativeCommands[$command] = true;
                    }
                }
            }
        }

        return $this->availableNativeCommands[$command];
    }
public function isNativeCommandAvailable ( $ command ) { switch ( $ command ) { case 'zip' : case 'unzip' : break ; default : return false ; } if ( ! isset ( $ this -> availableNativeCommands [ $ command ] ) ) { $ this -> availableNativeCommands [ $ command ] = false ; if ( $ this -> functionInspector -> functionAvailable ( 'exec' ) ) { $ rc = 1 ; $ output = [ ] ; @ exec ( $ command . ' -v 2>&1' , $ output , $ rc ) ; if ( $ rc === 0 ) { $ stdOut = implode ( "\n" , $ output ) ; if ( stripos ( $ stdOut , 'info-zip' ) !== false || stripos ( $ stdOut , 'infozip' ) !== false ) { $ this -> availableNativeCommands [ $ command ] = true ; } } } } return $ this -> availableNativeCommands [ $ command ] ; }
Check if a native command is available.

@param string $command

@return bool
Check if a native command is available .