本文整理匯總了PHP中PharData::getSignature方法的典型用法代碼示例。如果您正苦於以下問題:PHP PharData::getSignature方法的具體用法?PHP PharData::getSignature怎麽用?PHP PharData::getSignature使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類PharData
的用法示例。
在下文中一共展示了PharData::getSignature方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: dirname
include dirname(__FILE__) . '/files/tarmaker.php.inc';
$fname = dirname(__FILE__) . '/tar_004.phar.tar';
$alias = 'phar://' . $fname;
$fname2 = dirname(__FILE__) . '/tar_004.tar';
$tar = new tarmaker($fname, 'none');
$tar->init();
$tar->addFile('tar_004.php', '<?php var_dump(__FILE__);');
$tar->addFile('internal/file/here', "hi there!\n");
$tar->addFile('.phar/stub.php', "__HALT_COMPILER();");
$tar->close();
try {
$phar = new Phar($fname);
var_dump($phar->getStub());
} catch (Exception $e) {
echo $e->getMessage() . "\n";
}
ini_set('phar.require_hash', 0);
try {
$phar = new PharData($fname2);
$phar['file'] = 'hi';
var_dump($phar->getSignature());
$phar->setSignatureAlgorithm(Phar::MD5);
var_dump($phar->getSignature());
} catch (Exception $e) {
echo $e->getMessage() . "\n";
}
?>
===DONE===
<?php
@unlink(dirname(__FILE__) . '/tar_004.phar.tar');
@unlink(dirname(__FILE__) . '/tar_004.tar');
示例2: toTar
function toTar()
{
if (isset($this->tar)) {
return;
}
if (isset($this->tgz)) {
if (file_exists($this->file . '.tar')) {
try {
$p = new \PharData($this->file . '.tar');
} catch (\Exception $e) {
}
if ($p->getSignature() === $this->phar->getSignature()) {
$this->tar = $p;
if ($this->outfile) {
copy($this->file . '.tar', $this->outfile . '.tar');
}
return;
}
unset($p);
\Phar::unlinkArchive($this->file . '.tar');
}
$fp = gzopen($this->file . '.tgz', 'rb');
$gp = fopen($this->file . '.tar', 'wb');
stream_copy_to_stream($fp, $gp);
fclose($fp);
fclose($gp);
$this->tar = new \PharData($this->file . '.tar');
return;
}
if (isset($this->zip)) {
if (file_exists($this->file . '.tar')) {
\Phar::unlinkArchive($this->file . '.tar');
}
$this->tar = $this->zip->convertToData(\Phar::TAR, \Phar::NONE, $this->ext . '.tar');
$this->tar->setSignatureAlgorithm(\Phar::SHA1);
if ($this->outfile) {
copy($this->file . '.tar', $this->outfile . '.tar');
}
$this->zip = new \PharData($this->file . '.zip');
return;
}
// by process of elimination, the phar is in phar format
if (file_exists($this->file . '.tar')) {
\Phar::unlinkArchive($this->file . '.tar');
}
$this->tar = $this->phar->convertToData(\Phar::TAR, \Phar::NONE, $this->ext . '.tar');
$this->tar->setSignatureAlgorithm(\Phar::SHA1);
if ($this->outfile) {
copy($this->file . '.tar', $this->outfile . '.tar');
}
$this->phar = new \Phar($this->file . '.phar');
}