-
Notifications
You must be signed in to change notification settings - Fork 1
Daten formatiert Auslesen Eigener Formatter (beta)
Axel Krysztofiak edited this page Sep 13, 2024
·
3 revisions
Ab Version 3 kann man eigene Formatter implementieren. Das kommt daher, weil man ab dann die Klasse angibt, die verwendet werden soll.
Wichtig ist nur, dass die Klasse einer der Formatter-Interfaces implementiert.
Das sind die folgenden:
FriendsOfRedaxo\addon\MediapoolExif\Format\FormatInterface
Note
In Version 3.0 musste man von FriendsOfRedaxo\addon\MediapoolExif\Format\FormatInterface
ableiteten und konnte in der Methode format
auf $this->data
zugreifen.
Beispiel: DateTime
(in der Beispieldatei mit 2019:03:01 13:03:02
befüllt)
Formatter:
//Datei redaxo/src/addons/project/lib/Exif/MyFormatter.php
namespace Project\Exif;
use FriendsOfRedaxo\MediapoolExif\Formatter\Interface\StandardFormatterInterface;
class MyFormatter implements StandardFormatterInterface
{
public function format(array $exif): string
{
$value = $exif['DateTime']; //2019:03:01 13:03:02
if (!$value) {
return '';
}
//Ausgabe/Aufbereitung
return date('d.m.Y H:i:s', strtotime($value)); //01.03.2019 13:03:02
}
}
Im Template, Block oder sonstwo:
use FriendsOfRedaxo\addon\MediapoolExif\Enum\Format;
use FriendsOfRedaxo\addon\MediapoolExif\Exif;
use Project\Exif\MyFormatter;
$media = rex_media::get($filename);
$exif = Exif::get($media);
?>
<pre>
<?php var_dump($exif->format(MyFormatter::class));?>
</pre>
Ausgabe:
string(19) "01.03.2019 13:03:02"