本文整理汇总了PHP中Zend_Filter_Decompress::filter方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Filter_Decompress::filter方法的具体用法?PHP Zend_Filter_Decompress::filter怎么用?PHP Zend_Filter_Decompress::filter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_Filter_Decompress
的用法示例。
在下文中一共展示了Zend_Filter_Decompress::filter方法的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: decompress
protected function decompress($local_path)
{
//Create filter object
$filter = new Zend_Filter_Decompress(array('adapter' => 'Zend_Filter_Compress_Zip', 'options' => array('target' => dirname($local_path))));
$filter->filter($local_path);
return true;
}
示例2: descompactarAction
public function descompactarAction()
{
$v = new Zend_Filter_Decompress(array('adapter' => 'Zip', 'options' => array('target' => 'D:\\aula')));
$descompactar = $v->filter('D:\\arquivo.zip');
var_dump($descompactar);
exit;
}
示例3: descomprimir
public function descomprimir()
{
$filter = new Zend_Filter_Compress('Bz2');
$compressed = $filter->filter('a:2:{s:4:"type";s:15:"MultiLineString";s:11:"coordinates";a:1:{i:0;a:25:{i:0;a:2:{i:0;d:323073.5208;i:1;d:6410523.3888999997;}i:1;a:2:{i:0;d:323000.85610000044;i:1;d:6410506.2089999998;}i:2;a:2:{i:0;d:322934.71009999979;i:1;d:6410512.8235999998;}i:3;a:2:{i:0;d:322875.17879999988;i:1;d:6410559.1257999996;}i:4;a:2:{i:0;d:322795.80360000022;i:1;d:6410631.8864000002;}i:5;a:2:{i:0;d:322718.0833;i:1;d:6410696.3888999997;}i:6;a:2:{i:0;d:322689.11459999997;i:1;d:6410711.8888999997;}i:7;a:2:{i:0;d:322456.5208;i:1;d:6410836.8888999997;}i:8;a:2:{i:0;d:322402.1458;i:1;d:6410989.8888999997;}i:9;a:2:{i:0;d:322379.08399999997;i:1;d:6411041.9912999999;}i:10;a:2:{i:0;d:322332.7818;i:1;d:6411088.2934999997;}i:11;a:2:{i:0;d:322272.30209999997;i:1;d:6411109.3888999997;}i:12;a:2:{i:0;d:322220.33370000031;i:1;d:6411088.2934999997;}i:13;a:2:{i:0;d:322200.48990000039;i:1;d:6411088.2934999997;}i:14;a:2:{i:0;d:322154.18769999966;i:1;d:6411114.7518999996;}i:15;a:2:{i:0;d:322107.88559999969;i:1;d:6411154.4395000003;}i:16;a:2:{i:0;d:322054.96879999997;i:1;d:6411174.2833000002;}i:17;a:2:{i:0;d:321943.61459999997;i:1;d:6411188.8888999997;}i:18;a:2:{i:0;d:321863.14549999963;i:1;d:6411233.8146000002;}i:19;a:2:{i:0;d:321830.07249999978;i:1;d:6411286.7313999999;}i:20;a:2:{i:0;d:321783.77029999997;i:1;d:6411346.2627999997;}i:21;a:2:{i:0;d:321677.93680000026;i:1;d:6411366.1065999996;}i:22;a:2:{i:0;d:321605.17619999964;i:1;d:6411419.0232999995;}i:23;a:2:{i:0;d:321494.05209999997;i:1;d:6411447.3888999997;}i:24;a:2:{i:0;d:321387.3333;i:1;d:6411434.3888999997;}}}}');
$filter = new Zend_Filter_Decompress('Bz2');
$decompressed = $filter->filter($compressed);
echo $decompressed;
}
示例4: decrypt
/**
* Defined by Zend_Filter_Interface
*
* Decrypts $value with the defined settings
*
* @param string $value Content to decrypt
* @return string The decrypted content
* @throws Zend_Filter_Exception
*/
public function decrypt($value)
{
$decrypted = "";
$envelope = current($this->getEnvelopeKey());
if (count($this->_keys['private']) !== 1) {
require_once 'Zend/Filter/Exception.php';
throw new Zend_Filter_Exception('Please give a private key for decryption with Openssl');
}
if (!$this->_package && empty($envelope)) {
require_once 'Zend/Filter/Exception.php';
throw new Zend_Filter_Exception('Please give a envelope key for decryption with Openssl');
}
foreach ($this->_keys['private'] as $key => $cert) {
$keys = openssl_pkey_get_private($cert, $this->getPassphrase());
}
if ($this->_package) {
$details = openssl_pkey_get_details($keys);
if ($details !== false) {
$fingerprint = md5($details['key']);
} else {
$fingerprint = md5("ZendFramework");
}
$count = unpack('ncount', $value);
$count = $count['count'];
$length = 2;
for ($i = $count; $i > 0; --$i) {
$header = unpack('H32print/nsize', substr($value, $length, 18));
$length += 18;
if ($header['print'] == $fingerprint) {
$envelope = substr($value, $length, $header['size']);
}
$length += $header['size'];
}
// remainder of string is the value to decrypt
$value = substr($value, $length);
}
$crypt = openssl_open($value, $decrypted, $envelope, $keys);
openssl_free_key($keys);
if ($crypt === false) {
require_once 'Zend/Filter/Exception.php';
throw new Zend_Filter_Exception('Openssl was not able to decrypt you content with the given options');
}
// decompress after decryption
if (!empty($this->_compression)) {
require_once 'Zend/Filter/Decompress.php';
$decompress = new Zend_Filter_Decompress($this->_compression);
$decrypted = $decompress->filter($decrypted);
}
return $decrypted;
}
示例5: decrypt
/**
* Defined by Zend_Filter_Interface
*
* Decrypts $value with the defined settings
*
* @param string $value Content to decrypt
* @return string The decrypted content
*/
public function decrypt($value)
{
$cipher = $this->_openCipher();
$this->_initCipher($cipher);
$decrypted = mdecrypt_generic($cipher, $value);
mcrypt_generic_deinit($cipher);
$this->_closeCipher($cipher);
// decompress after decryption
if (!empty($this->_compression)) {
#require_once 'Zend/Filter/Decompress.php';
$decompress = new Zend_Filter_Decompress($this->_compression);
$decrypted = $decompress->filter($decrypted);
}
return $decrypted;
}
示例6: decompressFile
/**
* Decompress a given plugin zip file.
*
* @param $file
*/
public function decompressFile($file)
{
$target = Shopware()->AppPath('Plugins_Community');
$filter = new Zend_Filter_Decompress(array(
'adapter' => 'Zip',
'options' => array(
'target' => $target
)
));
$filter->filter($file);
}
示例7: resultsserver
/**
* The client sends the results to Midas Server (put request).
*
* @param token
*
* @param array $args parameters
* @throws Exception
*/
public function resultsserver($args)
{
$testingmode = false;
if (isset($_GET['testingmode']) && $_GET['testingmode'] == 1) {
$testingmode = true;
}
if (!$testingmode && $_SERVER['REQUEST_METHOD'] != 'POST') {
throw new Exception('Should be a put request.', MIDAS_INVALID_PARAMETER);
}
$authComponent = MidasLoader::loadComponent('Authentication');
$userDao = $authComponent->getUser($args, Zend_Registry::get('userSession')->Dao);
if ($userDao == false) {
throw new Exception('Unable to authenticate as a server. Please check credentials.', MIDAS_INVALID_PARAMETER);
}
/** @var GroupModel $groupModel */
$groupModel = MidasLoader::loadModel('Group');
$groupServer = $groupModel->load(MIDAS_GROUP_SERVER_KEY);
$users = $groupServer->getUsers();
$isServer = false;
foreach ($users as $user) {
if ($user->getKey() == $userDao->getKey()) {
$isServer = true;
}
}
if ($isServer == false) {
throw new Exception('Unable to authenticate as a server. Please check credentials.', MIDAS_INVALID_PARAMETER);
}
if (!file_exists(UtilityComponent::getTempDirectory() . '/remoteprocessing')) {
mkdir(UtilityComponent::getTempDirectory() . '/remoteprocessing');
}
/** @var RandomComponent $randomComponent */
$randomComponent = MidasLoader::loadComponent('Random');
$destination = UtilityComponent::getTempDirectory() . '/remoteprocessing/' . $randomComponent->generateInt();
while (file_exists($destination)) {
$destination = UtilityComponent::getTempDirectory() . '/remoteprocessing/' . $randomComponent->generateInt();
}
mkdir($destination);
if (!$testingmode) {
move_uploaded_file($_FILES['file']['tmp_name'], $destination . '/results.zip');
}
if ($testingmode) {
return array();
}
if (file_exists($destination . '/results.zip')) {
mkdir($destination . '/content');
$target_directory = $destination . '/content';
$filter = new Zend_Filter_Decompress(array('adapter' => 'Zip', 'options' => array('target' => $target_directory)));
$compressed = $filter->filter($destination . '/results.zip');
if ($compressed && file_exists($target_directory . '/parameters.txt')) {
$info = file_get_contents($target_directory . '/parameters.txt');
$info = JsonComponent::decode($info);
$job_id = $info['job_id'];
/** @var Remoteprocessing_JobModel $jobModel */
$jobModel = MidasLoader::loadModel('Job', 'remoteprocessing');
$jobDao = $jobModel->load($job_id);
$jobDao->setStatus(MIDAS_REMOTEPROCESSING_STATUS_DONE);
$jobModel->save($jobDao);
$info['pathResults'] = $destination . '/content';
$info['log'] = file_get_contents($target_directory . '/log.txt');
$info['userKey'] = $userDao->getKey();
Zend_Registry::get('notifier')->callback($info['resultCallback'], $info);
} else {
throw new Exception('Error, unable to unzip results.', MIDAS_INVALID_PARAMETER);
}
} else {
throw new Exception('Error, unable to find results.', MIDAS_INVALID_PARAMETER);
}
$this->_rrmdir($destination);
return array();
}
示例8: unzip
/**
* Helper function to decompress zip files.
* @param UploadedFile $file
* @param $targetDirectory
* @throws Exception
*/
private function unzip(UploadedFile $file, $targetDirectory)
{
$filter = new \Zend_Filter_Decompress(array('adapter' => $file->getClientOriginalExtension(), 'options' => array('target' => $targetDirectory)));
$filter->filter($file->getPath() . DIRECTORY_SEPARATOR . $file->getFilename());
}
示例9: testDecompressArchive
/**
* Basic usage
*
* @return void
*/
public function testDecompressArchive()
{
$filter = new Zend_Filter_Decompress('bz2');
$archive = dirname(__FILE__) . '/../_files/compressed.bz2';
$filter->setArchive($archive);
$content = $filter->compress('compress me');
$this->assertTrue($content);
$filter2 = new Zend_Filter_Decompress('bz2');
$content2 = $filter2->filter($archive);
$this->assertEquals('compress me', $content2);
}
示例10: _updateAddOnFiles
private static function _updateAddOnFiles($addOnId, $tempFile)
{
$tempDir = $tempFile . '_extracted';
XenForo_Helper_File::createDirectory($tempDir, false);
XenForo_Helper_File::makeWritableByFtpUser($tempDir);
$decompress = new Zend_Filter_Decompress(array('adapter' => 'Zip', 'options' => array('target' => $tempDir)));
if (!$decompress->filter($tempFile)) {
throw new XenForo_Exception('Unable to extract add-on package.', true);
}
$uploadDir = sprintf('%s/upload', $tempDir);
if (!is_dir($uploadDir)) {
throw new XenForo_Exception('Unsupported add-on package (no "upload" directory found).', true);
}
$xfDir = dirname(XenForo_Autoloader::getInstance()->getRootDir());
$files = self::_verifyAddOnFiles($uploadDir, $xfDir);
$xmlPath = self::_findXmlPath($addOnId, $tempDir, $xfDir, $files);
self::_moveAddOnFiles($uploadDir, $xfDir, $files);
return $xmlPath;
}
示例11: setFileHash
/**
* Prepara el archivo y lo coloca en directorio temporal
* @param string $hash
*/
public function setFileHash($hash)
{
$this->_hash = $hash;
$cache = Cache::iniciar();
if ($this->_file_info = $cache->load($hash)) {
$this->_dir_temp .= $this->_ci->string_core->rand_string(21);
mkdir($this->_dir_temp, 0755);
file_put_contents($this->_dir_temp . "/" . $this->_file_info["archivo_nombre"], $this->_file_info["archivo"]);
if ($this->_file_info["tipo"] == "kmz") {
$filter = new Zend_Filter_Decompress(array('adapter' => 'Zip', 'options' => array('target' => $this->_dir_temp)));
$compressed = $filter->filter($this->_dir_temp . "/" . $this->_file_info["archivo_nombre"]);
if ($compressed) {
unlink($this->_dir_temp . "/" . $this->_file_info["archivo_nombre"]);
}
}
}
}
示例12: decompressFile
/**
* Decompress a given plugin zip file.
*
* @param $file
* @param string $source
* @throws Enlight_Exception
*/
public function decompressFile($file, $source = 'Community')
{
$target = Shopware()->AppPath('Plugins_' . $source);
if (!$this->isPluginDirectoryWritable($target, true)) {
throw new Enlight_Exception("A directory or a file in " . $target . " is not writable, please change the permissions recursively");
}
$filter = new Zend_Filter_Decompress(array('adapter' => 'Zip', 'options' => array('target' => $target)));
$filter->filter($file);
}
示例13: unPack
public function unPack()
{
$response = array('success' => false);
$files = explode(':', $this->_data['file']);
$path = $this->cfg['path'] . $this->_data['dirPath'];
//
require_once 'Zend' . DIR_SEP . 'Filter.php';
require_once 'Zend' . DIR_SEP . 'Filter' . DIR_SEP . 'Decompress.php';
$ext = $this->_substr($files[0], $this->_strrpos($files[0], '.') + 1);
$ext = $this->_strtolower($ext);
$filter = new Zend_Filter_Decompress(array('adapter' => ucfirst($ext), 'options' => array('target' => $path)));
$result = $filter->filter($path . $files[0]);
false === $result ? $response['success'] = false : ($response['success'] = true);
return $response;
}
示例14: addZipAction
public function addZipAction()
{
parent::postDispatch();
$auth = Zend_Auth::getInstance();
if (!$auth->hasIdentity()) {
$this->redirect('/auth');
}
$adapter = new Zend_File_Transfer_Adapter_Http();
$dbTable = new Application_Model_DbTable_Block();
$options = array('ignoreNoFile' => true);
$adapter->setOptions($options);
$lastText = $dbTable->getTextById($_GET['id']);
$this->view->block = $lastText;
if (isset($_POST['submit'])) {
// Enviar a atualização para o banco.
$adapter->setDestination('c:/teste');
$link_file = $adapter->getFileName();
$name_file = $adapter->getFileName(null, false);
$dbTable->update(array('date' => date('Y-m-d H:i:s'), 'name_file' => "{$name_file}", 'link_file' => "{$link_file}"), array('id = ? ' => $_GET['id']));
$filter = new Zend_Filter_Decompress(array('adapter' => 'Zip', 'options' => array('target' => 'C:/teste/decompress')));
$filter->filter($link_file);
$adapter->receive();
header('Location: ../');
}
}