ne of ZLIB_ENCODING_* constants. * @return string The compressed string. * @throws ZlibException * */ function gzcompress(string $data, int $level = -1, int $encoding = ZLIB_ENCODING_DEFLATE): string { error_clear_last(); $result = \gzcompress($data, $level, $encoding); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * This function returns a decoded version of the input * data. * * @param string $data The data to decode, encoded by gzencode. * @param int $length The maximum length of data to decode. * @return string The decoded string. * @throws ZlibException * */ function gzdecode(string $data, int $length = null): string { error_clear_last(); if ($length !== null) { $result = \gzdecode($data, $length); } else { $result = \gzdecode($data); } if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * This function compresses the given string using the DEFLATE * data format. * * For details on the DEFLATE compression algorithm see the document * "DEFLATE Compressed Data Format * Specification version 1.3" (RFC 1951). * * @param string $data The data to deflate. * @param int $level The level of compression. Can be given as 0 for no compression up to 9 * for maximum compression. If not given, the default compression level will * be the default compression level of the zlib library. * @param int $encoding One of ZLIB_ENCODING_* constants. * @return string The deflated string. * @throws ZlibException * */ function gzdeflate(string $data, int $level = -1, int $encoding = ZLIB_ENCODING_RAW): string { error_clear_last(); $result = \gzdeflate($data, $level, $encoding); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * This function returns a compressed version of the input * data compatible with the output of the * gzip program. * * For more information on the GZIP file format, see the document: * GZIP file format specification * version 4.3 (RFC 1952). * * @param string $data The data to encode. * @param int $level The level of compression. Can be given as 0 for no compression up to 9 * for maximum compression. If not given, the default compression level will * be the default compression level of the zlib library. * @param int $encoding_mode The encoding mode. Can be FORCE_GZIP (the default) * or FORCE_DEFLATE. * * Prior to PHP 5.4.0, using FORCE_DEFLATE results in * a standard zlib deflated string (inclusive zlib headers) after a gzip * file header but without the trailing crc32 checksum. * * In PHP 5.4.0 and later, FORCE_DEFLATE generates * RFC 1950 compliant output, consisting of a zlib header, the deflated * data, and an Adler checksum. * @return string The encoded string. * @throws ZlibException * */ function gzencode(string $data, int $level = -1, int $encoding_mode = FORCE_GZIP): string { error_clear_last(); $result = \gzencode($data, $level, $encoding_mode); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Gets a (uncompressed) string of up to length - 1 bytes read from the given * file pointer. Reading ends when length - 1 bytes have been read, on a * newline, or on EOF (whichever comes first). * * @param resource $zp The gz-file pointer. It must be valid, and must point to a file * successfully opened by gzopen. * @param int $length The length of data to get. * @return string The uncompressed string. * @throws ZlibException * */ function gzgets($zp, int $length = null): string { error_clear_last(); if ($length !== null) { $result = \gzgets($zp, $length); } else { $result = \gzgets($zp); } if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Identical to gzgets, except that * gzgetss attempts to strip any HTML and PHP * tags from the text it reads. * * @param resource $zp The gz-file pointer. It must be valid, and must point to a file * successfully opened by gzopen. * @param int $length The length of data to get. * @param string $allowable_tags You can use this optional parameter to specify tags which should not * be stripped. * @return string The uncompressed and stripped string. * @throws ZlibException * */ function gzgetss($zp, int $length, string $allowable_tags = null): string { error_clear_last(); if ($allowable_tags !== null) { $result = \gzgetss($zp, $length, $allowable_tags); } else { $result = \gzgetss($zp, $length); } if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * This function inflates a deflated string. * * @param string $data The data compressed by gzdeflate. * @param int $length The maximum length of data to decode. * @return string The original uncompressed data. * * The function will return an error if the uncompressed data is more than * 32768 times the length of the compressed input data * or more than the optional parameter length. * @throws ZlibException * */ function gzinflate(string $data, int $length = 0): string { error_clear_last(); $result = \gzinflate($data, $length); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Reads to EOF on the given gz-file pointer from the current position and * writes the (uncompressed) results to standard output. * * @param resource $zp The gz-file pointer. It must be valid, and must point to a file * successfully opened by gzopen. * @return int The number of uncompressed characters read from gz * and passed through to the input. * @throws ZlibException * */ function gzpassthru($zp): int { error_clear_last(); $result = \gzpassthru($zp); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Sets the file position indicator of the given gz-file pointer to the * beginning of the file stream. * * @param resource $zp The gz-file pointer. It must be valid, and must point to a file * successfully opened by gzopen. * @throws ZlibException * */ function gzrewind($zp): void { error_clear_last(); $result = \gzrewind($zp); if ($result === false) { throw ZlibException::createFromPhpError(); } } /** * This function uncompress a compressed string. * * @param string $data The data compressed by gzcompress. * @param int $length The maximum length of data to decode. * @return string The original uncompressed data. * * The function will return an error if the uncompressed data is more than * 32768 times the length of the compressed input data * or more than the optional parameter length. * @throws ZlibException * */ function gzuncompress(string $data, int $length = 0): string { error_clear_last(); $result = \gzuncompress($data, $length); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * * * @param resource $resource * @return int Returns number of bytes read so far. * @throws ZlibException * */ function inflate_get_read_len($resource): int { error_clear_last(); $result = \inflate_get_read_len($resource); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Usually returns either ZLIB_OK or ZLIB_STREAM_END. * * @param resource $resource * @return int Returns decompression status. * @throws ZlibException * */ function inflate_get_status($resource): int { error_clear_last(); $result = \inflate_get_status($resource); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Incrementally inflates encoded data in the specified context. * * Limitation: header information from GZIP compressed data are not made * available. * * @param resource $context A context created with inflate_init. * @param string $encoded_data A chunk of compressed data. * @param int $flush_mode One of ZLIB_BLOCK, * ZLIB_NO_FLUSH, * ZLIB_PARTIAL_FLUSH, * ZLIB_SYNC_FLUSH (default), * ZLIB_FULL_FLUSH, ZLIB_FINISH. * Normally you will want to set ZLIB_NO_FLUSH to * maximize compression, and ZLIB_FINISH to terminate * with the last chunk of data. See the zlib manual for a * detailed description of these constants. * @return string Returns a chunk of uncompressed data. * @throws ZlibException * */ function inflate_add($context, string $encoded_data, int $flush_mode = ZLIB_SYNC_FLUSH): string { error_clear_last(); $result = \inflate_add($context, $encoded_data, $flush_mode); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Initialize an incremental inflate context with the specified * encoding. * * @param int $encoding One of the ZLIB_ENCODING_* constants. * @param array $options An associative array which may contain the following elements: * * * level * * * The compression level in range -1..9; defaults to -1. * * * * * memory * * * The compression memory level in range 1..9; defaults to 8. * * * * * window * * * The zlib window size (logarithmic) in range 8..15; defaults to 15. * * * * * strategy * * * One of ZLIB_FILTERED, * ZLIB_HUFFMAN_ONLY, ZLIB_RLE, * ZLIB_FIXED or * ZLIB_DEFAULT_STRATEGY (the default). * * * * * dictionary * * * A string or an array of strings * of the preset dictionary (default: no preset dictionary). * * * * * * The compression level in range -1..9; defaults to -1. * * The compression memory level in range 1..9; defaults to 8. * * The zlib window size (logarithmic) in range 8..15; defaults to 15. * * One of ZLIB_FILTERED, * ZLIB_HUFFMAN_ONLY, ZLIB_RLE, * ZLIB_FIXED or * ZLIB_DEFAULT_STRATEGY (the default). * * A string or an array of strings * of the preset dictionary (default: no preset dictionary). * @return resource Returns an inflate context resource (zlib.inflate) on * success. * @throws ZlibException * */ function inflate_init(int $encoding, array $options = null) { error_clear_last(); $result = \inflate_init($encoding, $options); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Reads a file, decompresses it and writes it to standard output. * * readgzfile can be used to read a file which is not in * gzip format; in this case readgzfile will directly * read from the file without decompression. * * @param string $filename The file name. This file will be opened from the filesystem and its * contents written to standard output. * @param int $use_include_path You can set this optional parameter to 1, if you * want to search for the file in the include_path too. * @return int Returns the number of (uncompressed) bytes read from the file on success * @throws ZlibException * */ function readgzfile(string $filename, int $use_include_path = 0): int { error_clear_last(); $result = \readgzfile($filename, $use_include_path); if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; } /** * Uncompress any raw/gzip/zlib encoded data. * * @param string $data * @param int $max_decoded_len * @return string Returns the uncompressed data. * @throws ZlibException * */ function zlib_decode(string $data, int $max_decoded_len = null): string { error_clear_last(); if ($max_decoded_len !== null) { $result = \zlib_decode($data, $max_decoded_len); } else { $result = \zlib_decode($data); } if ($result === false) { throw ZlibException::createFromPhpError(); } return $result; }{"id":25,"date":"2017-04-01T14:49:13","date_gmt":"2017-04-01T12:49:13","guid":{"rendered":"https:\/\/andyandszerdi.wpmudev.host\/?page_id=25"},"modified":"2024-12-10T21:59:26","modified_gmt":"2024-12-10T19:59:26","slug":"home","status":"publish","type":"page","link":"https:\/\/andyandszerdi.com\/","title":{"rendered":"London Wedding Photographers"},"content":{"rendered":"\n
We love the shit<\/em> out of weddings!<\/h5>\n\n\n\n
\n
\n
\n
\n
\"\"<\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n
\n

Creative East London Wedding Photographers for the Wonderfully in Love<\/h3>\n\n\n\n

We\u2019re Andy and Szerdi, fun and colourful wedding photographers based in Victoria Park, between Bow and Hackney in the heart of East London. We specialise in creative, vibrant, and alternative weddings. We love working with couples who want their love stories captured authentically and artfully. Whether you\u2019re planning a big, raucous celebration or an intimate city elopement, we\u2019re here to document your day with a personal touch.<\/p>\n\n\n\n

We Love East London Weddings<\/h3>\n\n\n\n

From Hackney Town Hall to the colourful streets of Shoreditch, we\u2019re passionate about photographing love stories in East London and beyond. This vibrant part of London offers the perfect backdrop for creative, alternative weddings. Whether it\u2019s the bustling energy of the city or quiet moments in hidden gems, East London is full of inspiration.<\/p>\n\n\n\n

Let\u2019s Capture Your Love Story<\/h3>\n\n\n\n

We freaking love love, and getting to capture it for creative, fun, and arty couples is the best job ever. If you\u2019re looking for vibrant, authentic East London wedding photography, get in touch with us<\/a> today!<\/p>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"

We love the shit out of weddings! Creative East London Wedding Photographers for the Wonderfully<\/p>\n","protected":false},"author":3,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"open","ping_status":"open","template":"","meta":{"_acf_changed":false,"om_disable_all_campaigns":false,"advgb_blocks_editor_width":"","advgb_blocks_columns_visual_guide":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"footnotes":""},"class_list":["post-25","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"\nCreative East London Wedding Photography for those in love- Andy & Szerdi Photography<\/title>\n<meta name=\"description\" content=\"Creative East London wedding photographers capturing vibrant, unique love stories for alternative couples. Fun, arty, and always real!\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/andyandszerdi.com\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Creative East London Wedding Photography for those in love- Andy & Szerdi Photography\" \/>\n<meta property=\"og:description\" content=\"Creative East London wedding photographers capturing vibrant, unique love stories for alternative couples. Fun, arty, and always real!\" \/>\n<meta property=\"og:url\" content=\"https:\/\/andyandszerdi.com\/\" \/>\n<meta property=\"og:site_name\" content=\"Andy & Szerdi Photography\" \/>\n<meta property=\"article:modified_time\" content=\"2024-12-10T19:59:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2024\/12\/US-001-2.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"712\" \/>\n\t<meta property=\"og:image:height\" content=\"1067\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/andyandszerdi.com\/\",\"url\":\"https:\/\/andyandszerdi.com\/\",\"name\":\"Creative East London Wedding Photography for those in love- Andy & Szerdi Photography\",\"isPartOf\":{\"@id\":\"https:\/\/andyandszerdi.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/andyandszerdi.com\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/andyandszerdi.com\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2024\/12\/US-001-2-614x920.jpg\",\"datePublished\":\"2017-04-01T12:49:13+00:00\",\"dateModified\":\"2024-12-10T19:59:26+00:00\",\"description\":\"Creative East London wedding photographers capturing vibrant, unique love stories for alternative couples. Fun, arty, and always real!\",\"breadcrumb\":{\"@id\":\"https:\/\/andyandszerdi.com\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/andyandszerdi.com\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/andyandszerdi.com\/#primaryimage\",\"url\":\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2024\/12\/US-001-2.jpg\",\"contentUrl\":\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2024\/12\/US-001-2.jpg\",\"width\":712,\"height\":1067},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/andyandszerdi.com\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/andyandszerdi.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"London Wedding Photographers\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/andyandszerdi.com\/#website\",\"url\":\"https:\/\/andyandszerdi.com\/\",\"name\":\"Andy & Szerdi Photography\",\"description\":\"Destination Wedding Photographers and Videographers\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/andyandszerdi.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Creative East London Wedding Photography for those in love- Andy & Szerdi Photography","description":"Creative East London wedding photographers capturing vibrant, unique love stories for alternative couples. Fun, arty, and always real!","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/andyandszerdi.com\/","og_locale":"en_US","og_type":"article","og_title":"Creative East London Wedding Photography for those in love- Andy & Szerdi Photography","og_description":"Creative East London wedding photographers capturing vibrant, unique love stories for alternative couples. Fun, arty, and always real!","og_url":"https:\/\/andyandszerdi.com\/","og_site_name":"Andy & Szerdi Photography","article_modified_time":"2024-12-10T19:59:26+00:00","og_image":[{"width":712,"height":1067,"url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2024\/12\/US-001-2.jpg","type":"image\/jpeg"}],"twitter_misc":{"Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/andyandszerdi.com\/","url":"https:\/\/andyandszerdi.com\/","name":"Creative East London Wedding Photography for those in love- Andy & Szerdi Photography","isPartOf":{"@id":"https:\/\/andyandszerdi.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/andyandszerdi.com\/#primaryimage"},"image":{"@id":"https:\/\/andyandszerdi.com\/#primaryimage"},"thumbnailUrl":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2024\/12\/US-001-2-614x920.jpg","datePublished":"2017-04-01T12:49:13+00:00","dateModified":"2024-12-10T19:59:26+00:00","description":"Creative East London wedding photographers capturing vibrant, unique love stories for alternative couples. Fun, arty, and always real!","breadcrumb":{"@id":"https:\/\/andyandszerdi.com\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/andyandszerdi.com\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/andyandszerdi.com\/#primaryimage","url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2024\/12\/US-001-2.jpg","contentUrl":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2024\/12\/US-001-2.jpg","width":712,"height":1067},{"@type":"BreadcrumbList","@id":"https:\/\/andyandszerdi.com\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/andyandszerdi.com\/"},{"@type":"ListItem","position":2,"name":"London Wedding Photographers"}]},{"@type":"WebSite","@id":"https:\/\/andyandszerdi.com\/#website","url":"https:\/\/andyandszerdi.com\/","name":"Andy & Szerdi Photography","description":"Destination Wedding Photographers and Videographers","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/andyandszerdi.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"coauthors":[],"author_meta":{"author_link":"https:\/\/andyandszerdi.com\/author\/szerdi\/","display_name":"Szerdi"},"relative_dates":{"created":"Posted 8 years ago","modified":"Updated 2 weeks ago"},"absolute_dates":{"created":"Posted on April 1, 2017","modified":"Updated on December 10, 2024"},"absolute_dates_time":{"created":"Posted on April 1, 2017 2:49 pm","modified":"Updated on December 10, 2024 9:59 pm"},"featured_img_caption":"","featured_img":false,"series_order":"","_links":{"self":[{"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/pages\/25","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/comments?post=25"}],"version-history":[{"count":0,"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/pages\/25\/revisions"}],"wp:attachment":[{"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/media?parent=25"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}