Now it's Scrutinizer's turn
This commit is contained in:
parent
da9fbd6c8d
commit
af85f888be
|
|
@ -71,27 +71,18 @@ class StringValueBinder implements IValueBinder
|
||||||
*
|
*
|
||||||
* @param Cell $cell Cell to bind value to
|
* @param Cell $cell Cell to bind value to
|
||||||
* @param mixed $value Value to bind in cell
|
* @param mixed $value Value to bind in cell
|
||||||
*
|
|
||||||
* @return bool
|
|
||||||
*/
|
*/
|
||||||
public function bindValue(Cell $cell, $value)
|
public function bindValue(Cell $cell, $value)
|
||||||
{
|
{
|
||||||
|
if (is_object($value)) {
|
||||||
|
return $this->bindObjectValue($cell, $value);
|
||||||
|
}
|
||||||
|
|
||||||
// sanitize UTF-8 strings
|
// sanitize UTF-8 strings
|
||||||
if (is_string($value)) {
|
if (is_string($value)) {
|
||||||
$value = StringHelper::sanitizeUTF8($value);
|
$value = StringHelper::sanitizeUTF8($value);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (is_object($value)) {
|
|
||||||
// Handle any objects that might be injected
|
|
||||||
if ($value instanceof DateTimeInterface) {
|
|
||||||
$value = $value->format('Y-m-d H:i:s');
|
|
||||||
} elseif ($value instanceof RichText) {
|
|
||||||
$cell->setValueExplicit($value, DataType::TYPE_INLINE);
|
|
||||||
|
|
||||||
return true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ($value === null && $this->convertNull === false) {
|
if ($value === null && $this->convertNull === false) {
|
||||||
$cell->setValueExplicit($value, DataType::TYPE_NULL);
|
$cell->setValueExplicit($value, DataType::TYPE_NULL);
|
||||||
} elseif (is_bool($value) && $this->convertBoolean === false) {
|
} elseif (is_bool($value) && $this->convertBoolean === false) {
|
||||||
|
|
@ -109,4 +100,20 @@ class StringValueBinder implements IValueBinder
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
protected function bindObjectValue(Cell $cell, $value): bool
|
||||||
|
{
|
||||||
|
// Handle any objects that might be injected
|
||||||
|
if ($value instanceof DateTimeInterface) {
|
||||||
|
$value = $value->format('Y-m-d H:i:s');
|
||||||
|
} elseif ($value instanceof RichText) {
|
||||||
|
$cell->setValueExplicit($value, DataType::TYPE_INLINE);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
$cell->setValueExplicit((string) $value, DataType::TYPE_STRING);
|
||||||
|
|
||||||
|
return true;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue