Message-ID: <1414541374.3790.1485855384121.JavaMail.confluence@ip-10-127-227-164> Subject: Exported From Confluence MIME-Version: 1.0 Content-Type: multipart/related; boundary="----=_Part_3789_1062843754.1485855384121" ------=_Part_3789_1062843754.1485855384121 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Location: file:///C:/exported.html BinaryField Field Type

BinaryField Field Type

=20
=20
=20
=20

This Field Type represents and handles a binary file. It also count= s the number of times the file has been downloaded from the content/d= ownload module.

Name Internal name Expected input Output
BinaryFile ezbinaryfile Mixed Mixed

Description

This Field Type allows the storage and retrieval of a single file. It is= capable of handling virtually any file type and is typically used for stor= ing legacy document types such as PDF files, Word documents, spreadsheets, = etc. The maximum allowed file size is determined by the "Max file size" cla= ss attribute edit parameter and the "upload_max_filesize" dire= ctive in the main PHP configuration file ("php.ini").

PHP API Field Type 

Value Object

eZ\Publish\Core\FieldType\BinaryFile\Value offers the follo= wing properties.

Note that both BinaryFile and Media Value and Type inherit = from the BinaryBase abstract Field Type, and share common prop= erties.

Attribute Type Description Example
id string Binary file identifier. This= ID depends on the IO Handler=  that is being used. With the native, default handlers (File= System and Legacy), the ID is the file path, relative to the binary file st= orage root dir (var/<vardir>/storage/original by default= ). application/63cd472dd7819da7b75e8e= 2fee507c68.pdf
fileName string The human readable file name, as e= xposed to the outside. Used when sending the file for download in order to = name the file. 20130116_whitepaper_ezpublish5 lig= ht.pdf
fileSize int File size, in bytes. 1077923
mimeType string The file's mime type. application/pdf
uri string

The binary file's content/downl= oad URI. If the URI doesn't include a host or protocol, it applies to the r= equest domain.

/content/download/210/2707
downloadCount integer Number of times the file was downl= oaded 0
path string

*deprecated*
 Renamed to id starting from eZ Publish 5.2. Can still = be used, but it is recommended not to use it anymore as it will be removed.=

 

Hash format

The hash format mostly matches the value object. It has the following ke= ys:

  • id
  • path (for backwards compatibility)
  • fileName
  • fileSize
  • mimeType
  • uri
  • downloadCount

REST API specifics

Used in the REST API, a BinaryFile Field will mostly serialize the hash = described above. However there are a couple specifics worth mentioning.

Reading content:= url property

When reading the contents of a field of this type, an extra key is added= : url. This key gives you the absolute file URL, protocol and host included= .

Example: http://example.com/var/ezdemo_site/storage/original/ap= plication/63cd472dd7819da7b75e8e2fee507c68.pdf

Creating conte= nt: data property

When creating BinaryFile content with the REST API, it is possible to pr= ovide data as a base64 encoded string, using the "data" fieldV= alue key:

=20
<field>
    <fieldDefinitionIdentifier>file</fieldDefinitionIdentifier>
    <languageCode>eng-GB</languageCode>
    <fieldValue>
        <value key=3D"fileName">My file.pdf</value>
        <value key=3D"fileSize">17589</value>
        <value key=3D"data"><![CDATA[/9j/4AAQSkZJRgABAQEAZABkAAD/2=
wBDAAIBAQIBAQICAgICAgICAwUDAwMDAwYEBAMFBwYHBwcG
...
...]]></value>
    </fieldValue>
</field>
=20
=20
=20
=20
=20

 

=20
=20
=20
------=_Part_3789_1062843754.1485855384121--