當前位置: 首頁>>代碼示例>>PHP>>正文


PHP ElggFile::transfer方法代碼示例

本文整理匯總了PHP中ElggFile::transfer方法的典型用法代碼示例。如果您正苦於以下問題:PHP ElggFile::transfer方法的具體用法?PHP ElggFile::transfer怎麽用?PHP ElggFile::transfer使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在ElggFile的用法示例。


在下文中一共展示了ElggFile::transfer方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: testCanTransferFile

 /**
  * @group FileService
  */
 public function testCanTransferFile()
 {
     $dataroot = elgg_get_config('dataroot');
     $file = new \ElggFile();
     $file->owner_guid = 3;
     $file->setFilename("file-to-transfer.txt");
     $file->setFilename("file-to-transfer.txt");
     // Fail with non-existent file
     $this->assertFalse($file->transfer(4));
     $file->open('write');
     $file->write('Transfer');
     $file->close();
     $this->assertTrue($file->transfer(4));
     $this->assertEquals(4, $file->owner_guid);
     $this->assertEquals("file-to-transfer.txt", $file->getFilename());
     $this->assertEquals("{$dataroot}1/4/file-to-transfer.txt", $file->getFilenameOnFilestore());
     $this->assertTrue($file->exists());
     $this->assertFalse(file_exists("{$dataroot}1/3/file-to-transfer.txt"));
     $this->assertTrue($file->transfer(3, 'tmp/transferred-file.txt'));
     $this->assertEquals(3, $file->owner_guid);
     $this->assertEquals("tmp/transferred-file.txt", $file->getFilename());
     $this->assertEquals("{$dataroot}1/3/tmp/transferred-file.txt", $file->getFilenameOnFilestore());
     $this->assertTrue($file->exists());
     $this->assertFalse(file_exists("{$dataroot}1/4/file-to-transfer.txt"));
     // cleanup
     _elgg_rmdir("{$dataroot}1/3/");
     _elgg_rmdir("{$dataroot}1/4/");
 }
開發者ID:elgg,項目名稱:elgg,代碼行數:31,代碼來源:ElggFileTest.php

示例2: groups_update_event_listener

/**
 * Listen to group ownership changes and update group icon ownership
 * This will only move the source file, the actual icons are moved by
 * _elgg_filestore_move_icons()
 *
 * This operation is performed in an event listener to ensure that icons
 * are moved when ownership changes outside of the groups/edit action flow.
 *
 * @todo #4683 proposes that icons are owned by groups and not group owners
 * @see _elgg_filestore_move_icons()
 *
 * @param string    $event "update:after"
 * @param string    $type  "group"
 * @param ElggGroup $group Group entity
 * @return void
 */
function groups_update_event_listener($event, $type, $group)
{
    /* @var $group \ElggGroup */
    $original_attributes = $group->getOriginalAttributes();
    if (empty($original_attributes['owner_guid'])) {
        return;
    }
    $previous_owner_guid = $original_attributes['owner_guid'];
    // In addition to standard icons, groups plugin stores a copy of the original upload
    $filehandler = new ElggFile();
    $filehandler->owner_guid = $previous_owner_guid;
    $filehandler->setFilename("groups/{$group->guid}.jpg");
    $filehandler->transfer($group->owner_guid);
}
開發者ID:elgg,項目名稱:elgg,代碼行數:30,代碼來源:start.php


注:本文中的ElggFile::transfer方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。