Exemplo n.º 1
0
 private function getImageData(Image $image)
 {
     $data = ["src" => $image->getSrc()];
     if (($platform = $image->getPlatform()) !== null) {
         $data["platform"] = $platform;
     }
     if (count($purpose = $image->getPurpose()) > 0) {
         $data["purpose"] = implode(" ", $purpose);
     }
     if (($type = $image->getType()) !== null) {
         $data["type"] = $type;
     }
     if (count($sizes = $image->getSizes()) > 0) {
         $data["sizes"] = implode(" ", array_map(function (array $size) {
             return "{$size[0]}x{$size[1]}";
         }, $sizes));
     }
     return $data;
 }
Exemplo n.º 2
0
 private static function imageFromData(array $data)
 {
     $image = new Image();
     if (isset($data["src"])) {
         $image->setSrc($data["src"]);
     }
     if (isset($data["type"])) {
         $image->setType($data["type"]);
     }
     if (isset($data["sizes"])) {
         $sizes = [];
         if (preg_match_all("/(\\d+)x(\\d+)/", $data["sizes"], $sizes)) {
             for ($i = 0; $i < count($sizes[0]); $i++) {
                 $image->addSize($sizes[1][$i], $sizes[2][$i]);
             }
         }
     }
     return $image;
 }