59 private $title =
'Untitled Spreadsheet';
156 $this->lastModifiedBy = $modifier;
169 $timestamp = (float) (
new DateTime())->format(
'U');
377 return array_keys($this->customProperties);
385 return array_key_exists($propertyName, $this->customProperties);
395 if (isset($this->customProperties[$propertyName])) {
396 return $this->customProperties[$propertyName][
'value'];
409 return $this->customProperties[$propertyName][
'type'] ??
null;
417 if (is_float($propertyValue)) {
420 if (is_int($propertyValue)) {
423 if (is_bool($propertyValue)) {
443 public function setCustomProperty(
string $propertyName, $propertyValue =
'', $propertyType =
null): self
445 if (($propertyType ===
null) || (!in_array($propertyType, self::VALID_PROPERTY_TYPE_LIST))) {
449 if (!is_object($propertyValue)) {
450 $this->customProperties[$propertyName] = [
452 'type' => $propertyType,
515 switch ($propertyType) {
517 $intValue = (int) $propertyValue;
519 return (
$type[0] ===
'u') ? abs($intValue) : $intValue;
521 return (
float) $propertyValue;
525 return is_bool($propertyValue) ? $propertyValue : ($propertyValue ===
'true');
527 return $propertyValue;
foreach($mandatory_scripts as $file) $timestamp
An exception for terminatinating execution or to throw for unit testing.
const VALID_PROPERTY_TYPE_LIST
const PROPERTY_TYPE_BOOLEAN
constants
setCustomProperty(string $propertyName, $propertyValue='', $propertyType=null)
Set a Custom Property.
setCreated($timestamp)
Set Created.
setCreator(string $creator)
Set Creator.
getCustomPropertyType(string $propertyName)
Get a Custom Property Type.
getDescription()
Get Description.
static convertProperty($propertyValue, string $propertyType)
Convert property to form desired by Excel.
getCustomPropertyValue(string $propertyName)
Get a Custom Property Value.
setLastModifiedBy(string $modifier)
Set Last Modified By.
setModified($timestamp)
Set Modified.
static convertProperty2($propertyValue, string $type)
Convert property to form desired by Excel.
isCustomPropertySet(string $propertyName)
Check if a Custom Property is defined.
setSubject(string $subject)
Set Subject.
getModified()
Get Modified.
const PROPERTY_TYPE_STRING
identifyPropertyType($propertyValue)
getLastModifiedBy()
Get Last Modified By.
setTitle(string $title)
Set Title.
__construct()
Create a new Document Properties instance.
setCompany(string $company)
Set Company.
getKeywords()
Get Keywords.
setDescription(string $description)
Set Description.
const PROPERTY_TYPE_INTEGER
const PROPERTY_TYPE_ARRAY
setManager(string $manager)
Set Manager.
const PROPERTY_TYPE_UNKNOWN
getCustomProperties()
Get a List of Custom Property Names.
const PROPERTY_TYPE_FLOAT
setCategory(string $category)
Set Category.
setKeywords(string $keywords)
Set Keywords.
static intOrFloatTimestamp($timestamp)
getCategory()
Get Category.
static convertPropertyType(string $propertyType)
static evaluate($value)
Help some functions with large results operate correctly on 32-bit, by returning result as int when p...