Doctrine\OXM\Storage\FileSystemStorage::insert PHP Метод

insert() публичный Метод

Insert the XML into the filesystem with a specific identifier
public insert ( ClassMetadataInfo $classMetadata, string $id, string $xmlContent ) : boolean
$classMetadata Doctrine\OXM\Mapping\ClassMetadataInfo
$id string
$xmlContent string
Результат boolean
    public function insert(ClassMetadataInfo $classMetadata, $id, $xmlContent)
    {
        $this->prepareStoragePathForClass($this->resolveClassName($classMetadata));
        $filePath = $this->getFilename($classMetadata, $id);
        $result = file_put_contents($filePath, $xmlContent);
        if (false === $result) {
            // @codeCoverageIgnoreStart
            throw new StorageException("Entity '{$id}' could not be saved to the filesystem at '{$filePath}'");
            // @codeCoverageIgnoreEnd
        }
        return $result > 0;
    }

Usage Example

Пример #1
0
 /**
  * @test
  */
 public function itShouldSaveWithFullNamespaceSupport()
 {
     $calvin = $this->_getClassMetadataMock('Calvin\\Hobbes');
     $this->fileSystem->insert($calvin, 1, 'Spaceman Spiff');
     $this->assertTrue(is_file(__DIR__ . '/../Workspace/Calvin/Hobbes/1.xml'));
     $this->assertEquals('Spaceman Spiff', file_get_contents(__DIR__ . '/../Workspace/Calvin/Hobbes/1.xml'));
     @unlink(__DIR__ . '/../Workspace/Calvin/Hobbes/1.xml');
     @rmdir(__DIR__ . '/../Workspace/Calvin/Hobbes');
     @rmdir(__DIR__ . '/../Workspace/Calvin');
 }