本文整理汇总了PHP中LocalFile::putContents方法的典型用法代码示例。如果您正苦于以下问题:PHP LocalFile::putContents方法的具体用法?PHP LocalFile::putContents怎么用?PHP LocalFile::putContents使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类LocalFile
的用法示例。
在下文中一共展示了LocalFile::putContents方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: copyFile
public static function copyFile($params)
{
$apiManager = new ApiManager();
$user = ProcManager::getInstance()->getCurrentProcess()->getLoginContext()->getEyeosUser();
$cloudspace = false;
$cloudOrig = isset($params['cloud']['origin']) && strlen($params['cloud']['origin']) > 0 ? $params['cloud']['origin'] : null;
$cloudDestination = isset($params['cloud']['destination']) && strlen($params['cloud']['destination']) > 0 ? $params['cloud']['destination'] : null;
$pathCloud = "home://~" . $user->getName() . "/Cloudspaces/";
$pathOrig = null;
if ($cloudOrig) {
if ($pathCloud . $cloudOrig == $params['orig']) {
$pathOrig = "/";
} else {
$pathOrig = substr($params['orig'], strlen($pathCloud . $cloudOrig)) . "/";
}
}
if ($cloudDestination) {
$cloudspace = true;
}
$file = null;
$isFolder = true;
$tmpFile = null;
$filename = null;
$pathinfo = null;
$pathAbsolute = null;
if (!$params['file']['is_folder']) {
$isFolder = false;
$tmpFile = new LocalFile('/var/tmp/' . date('Y_m_d_H_i_s') . '_' . $user->getId());
$pathAbsolute = AdvancedPathLib::getPhpLocalHackPath($tmpFile->getAbsolutePath());
if (array_key_exists('id', $params['file'])) {
$token = $_SESSION['access_token_' . $cloudOrig . '_v2'];
$resourceUrl = null;
if (isset($params['file']['resource_url'])) {
$token = new stdClass();
$token->key = $params['access_token_key'];
$token->secret = $params['access_token_secret'];
$resourceUrl = $params['resource_url'];
}
$metadata = $apiManager->downloadMetadata($token, $params['file']['id'], $pathAbsolute, $user->getId(), true, $cloudOrig, $resourceUrl);
if ($metadata['status'] == 'KO') {
if ($metadata['error'] == 403) {
$denied = self::permissionDeniedCloud($cloudOrig);
$metadata['path'] = $denied['path'];
}
return $metadata;
} else {
if (isset($metadata['local'])) {
$file = FSI::getFile($params['file']['pathEyeos']);
$tmpFile->putContents($file->getContents());
}
}
} else {
$file = FSI::getFile($params['file']['path']);
$tmpFile->putContents($file->getContents());
}
}
if ($pathOrig) {
if ($params['file']['path'] == $pathOrig) {
$pathinfo = pathinfo($params['file']['filename']);
}
} else {
if ($params['file']['parent'] == null) {
$pathinfo = pathinfo($params['file']['filename']);
}
}
if ($pathinfo) {
$nameForCheck = $pathinfo['filename'];
$extension = null;
if (isset($pathinfo['extension'])) {
$extension = $pathinfo['extension'];
$nameForCheck .= '.' . $extension;
}
$number = 1;
$newFile = FSI::getFile($params['dest'] . "/" . $nameForCheck);
while ($newFile->exists()) {
$futureName = array($pathinfo['filename'], $number);
$nameForCheck = implode(' ', $futureName);
if ($extension) {
$nameForCheck .= '.' . $extension;
}
$number++;
$newFile = FSI::getFile($params['dest'] . "/" . $nameForCheck);
$params['filenameChange'] = $nameForCheck;
if (!array_key_exists('parent', $params['file'])) {
$params['pathChange'] = substr($params['orig'], strlen($pathCloud . $cloudOrig));
}
}
$filename = $newFile->getName();
} else {
$filename = $params['file']['filename'];
}
if ($cloudspace) {
$pathParent = substr($params['dest'], strlen($pathCloud . $cloudDestination));
if (array_key_exists('parent', $params['file'])) {
if (strlen($pathParent) == 0 && !$params['file']['parent']) {
$pathParent = '/';
}
if ($params['file']['parent']) {
$pathParent .= $params['file']['parent'];
}
//.........这里部分代码省略.........
示例2: putContents
/**
* NOTE: in the case of a link, the data is written to its target.
* @param mixed $data THe data to be written to the file.
* @param int $flags FILE_APPEND | LOCK_EX (FILE_TEXT | FILE_BINARY only for PHP 6)
* @return int The number of bytes written to the file.
*/
public function putContents($data, $flags = 0)
{
$this->checkWritePermission();
return parent::putContents($data, $flags);
}