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":55283,"date":"2017-05-22T13:22:21","date_gmt":"2017-05-22T11:22:21","guid":{"rendered":"https:\/\/andyandszerdi.wpmudev.host\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg"},"modified":"2019-02-22T11:58:26","modified_gmt":"2019-02-22T09:58:26","slug":"rustic-farm_wedding_vicky-dylan-042","status":"inherit","type":"attachment","link":"https:\/\/andyandszerdi.com\/vicky-and-dylan\/rustic-farm_wedding_vicky-dylan-042\/","title":{"rendered":"Rustic-Farm_Wedding_Vicky-Dylan-042"},"author":3,"featured_media":0,"comment_status":"open","ping_status":"closed","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},"class_list":["post-55283","attachment","type-attachment","status-inherit","hentry"],"acf":[],"yoast_head":"\nRustic-Farm_Wedding_Vicky-Dylan-042 - Andy & Szerdi Photography<\/title>\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\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Rustic-Farm_Wedding_Vicky-Dylan-042 - Andy & Szerdi Photography\" \/>\n<meta property=\"og:url\" content=\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg\" \/>\n<meta property=\"og:site_name\" content=\"Andy & Szerdi Photography\" \/>\n<meta property=\"article:modified_time\" content=\"2019-02-22T09:58:26+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"900\" \/>\n\t<meta property=\"og:image:height\" content=\"600\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg\",\"url\":\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg\",\"name\":\"Rustic-Farm_Wedding_Vicky-Dylan-042 - Andy & Szerdi Photography\",\"isPartOf\":{\"@id\":\"https:\/\/andyandszerdi.com\/#website\"},\"datePublished\":\"2017-05-22T11:22:21+00:00\",\"dateModified\":\"2019-02-22T09:58:26+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/andyandszerdi.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Vicky and Dylan\",\"item\":\"https:\/\/andyandszerdi.com\/vicky-and-dylan\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Rustic-Farm_Wedding_Vicky-Dylan-042\"}]},{\"@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":"Rustic-Farm_Wedding_Vicky-Dylan-042 - Andy & Szerdi Photography","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\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg","og_locale":"en_US","og_type":"article","og_title":"Rustic-Farm_Wedding_Vicky-Dylan-042 - Andy & Szerdi Photography","og_url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg","og_site_name":"Andy & Szerdi Photography","article_modified_time":"2019-02-22T09:58:26+00:00","og_image":[{"width":900,"height":600,"url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg","type":"image\/jpeg"}],"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg","url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg","name":"Rustic-Farm_Wedding_Vicky-Dylan-042 - Andy & Szerdi Photography","isPartOf":{"@id":"https:\/\/andyandszerdi.com\/#website"},"datePublished":"2017-05-22T11:22:21+00:00","dateModified":"2019-02-22T09:58:26+00:00","breadcrumb":{"@id":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/andyandszerdi.com\/"},{"@type":"ListItem","position":2,"name":"Vicky and Dylan","item":"https:\/\/andyandszerdi.com\/vicky-and-dylan\/"},{"@type":"ListItem","position":3,"name":"Rustic-Farm_Wedding_Vicky-Dylan-042"}]},{"@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"}]}},"smush":{"stats":{"percent":47.023843474256353,"bytes":222601,"size_before":473379,"size_after":250778,"time":0.63,"api_version":"1.0","lossy":true,"keep_exif":0},"sizes":{"thumbnail":{"percent":42.880000000000003,"bytes":35934,"size_before":83808,"size_after":47874,"time":0.12},"medium_large":{"percent":38.869999999999997,"bytes":42604,"size_before":109620,"size_after":67016,"time":0.16},"post-thumbnail":{"percent":42.590000000000003,"bytes":36402,"size_before":85475,"size_after":49073,"time":0.12},"full":{"percent":55.359999999999999,"bytes":107661,"size_before":194476,"size_after":86815,"time":0.23000000000000001}}},"description":{"rendered":"<p class=\"attachment\"><a href='https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg'><img decoding=\"async\" width=\"900\" height=\"600\" data-src=\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg\" class=\"attachment-medium size-medium lazyload\" alt=\"\" data-srcset=\"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg 900w, https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042-614x409.jpg 614w, https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042-768x512.jpg 768w, https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042-30x20.jpg 30w\" data-sizes=\"(max-width: 900px) 100vw, 900px\" src=\"data:image\/gif;base64,R0lGODlhAQABAAAAACH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==\" style=\"--smush-placeholder-width: 900px; --smush-placeholder-aspect-ratio: 900\/600;\" \/><\/a><\/p>\n"},"caption":{"rendered":""},"alt_text":"","media_type":"image","mime_type":"image\/jpeg","media_details":{"width":"900","height":"600","file":"2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg","sizes":{"thumbnail":{"file":"Rustic-Farm_Wedding_Vicky-Dylan-042-614x409.jpg","width":"614","height":"409","mime_type":"image\/jpeg","source_url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042-614x409.jpg"},"medium_large":{"file":"Rustic-Farm_Wedding_Vicky-Dylan-042-768x512.jpg","width":"768","height":"512","mime_type":"image\/jpeg","source_url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042-768x512.jpg"},"tiny-lazy":{"file":"Rustic-Farm_Wedding_Vicky-Dylan-042-30x20.jpg","width":"30","height":"20","mime_type":"image\/jpeg","source_url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042-30x20.jpg"},"post-thumbnail":{"file":"Rustic-Farm_Wedding_Vicky-Dylan-042-639x416.jpg","width":"639","height":"416","mime_type":"image\/jpeg","source_url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042-639x416.jpg"},"full":{"file":"Rustic-Farm_Wedding_Vicky-Dylan-042.jpg","width":900,"height":600,"mime_type":"image\/jpeg","source_url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg"}},"image_meta":{"aperture":"0","credit":"","camera":"","caption":"","created_timestamp":"0","copyright":"","focal_length":"0","iso":"0","shutter_speed":"0","title":"","orientation":"0"}},"post":55240,"source_url":"https:\/\/andyandszerdi.com\/wp-content\/uploads\/2017\/05\/Rustic-Farm_Wedding_Vicky-Dylan-042.jpg","_links":{"self":[{"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/media\/55283","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/media"}],"about":[{"href":"https:\/\/andyandszerdi.com\/wp-json\/wp\/v2\/types\/attachment"}],"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=55283"}]}}