3v4l.org

run code in 300+ PHP versions simultaneously
<?php /* https://core.trac.wordpress.org/ticket/22952 gzencode() == gzip gzcompress() == zlib (aka. HTTP deflate) gzdeflate() == *raw* deflate encoding */ function _run_function($compress_f, $uncompress_f, $s_orig, $encoding_name) { global $compression_level; $compressed = $compress_f($s_orig, $compression_level, constant($encoding_name)); if ($compressed === false) { echo "FAIL $compress_f with encoding=$encoding_name". PHP_EOL; return false; } if ($s_orig !== $uncompress_f($compressed)) { echo "FAIL $uncompress_f after $compress_f with encoding=$encoding_name". PHP_EOL; return false; } echo "PASS $compress_f/$uncompress_f with encoding=$encoding_name". PHP_EOL; return true; } $compression_level = 6; // default level is 6 echo '=========== LATIN STRING ===========' . PHP_EOL; $str = '!@#$%^&*()QWERTYUIOPSDFGHJKL!@#$%^&*()QWERTYUIOPSDFGHJKL:ZXCVBNMa!@#$%^&*()ERTYUIODFGHJKLXCVBNM@#$%^&*()RTYUIOPD:ZXCVBNM#!@#!@#$%^&*()QWERTYUIOPSDFGHJKL:ZXCVBNM-!@#$%^&*()ERTYUIODFGHJKLXCVBNM@#$%^&*()RTYUIOPD$%^&*()ERTYUIODFGHJ!@#$%^&*()QWERTYUIOPSDFGHJKL:ZXCVBNM]!@#$%^&*()ERTYUIODFGHJKLXCVBNM@#$%^&*()RTYUIOPDKLXCVBNM@#$%^&*()RTYUIOPDFGHJKLCVBNMFGHJTYU%^&RFGHJ4d56g7h8ui7h8ujirqwerqh8'; _run_function('gzencode', 'gzdecode', $str, 'FORCE_GZIP'); _run_function('gzencode', 'gzdecode', $str, 'FORCE_DEFLATE'); _run_function('gzcompress', 'gzuncompress', $str, 'ZLIB_ENCODING_DEFLATE'); _run_function('gzcompress', 'gzuncompress', $str, 'ZLIB_ENCODING_GZIP'); _run_function('gzcompress', 'gzuncompress', $str, 'ZLIB_ENCODING_RAW'); _run_function('gzdeflate', 'gzinflate', $str, 'ZLIB_ENCODING_DEFLATE'); _run_function('gzdeflate', 'gzinflate', $str, 'ZLIB_ENCODING_GZIP'); _run_function('gzdeflate', 'gzinflate', $str, 'ZLIB_ENCODING_RAW'); echo '=========== NON-LATIN STRING ===========' . PHP_EOL; $str = '布局 1 介绍 布局,简单来说就是设置元素的大小和位置。 Ext 的布局系统包括组件,布局,容器,容器是一种特殊的组件,可以管理组件的大小和位置。 容器是通过 doLayout 来重新计算布局,并更新 DOM. 2 手工布局是不必要的,框架会为你自动处理。'; _run_function('gzencode', 'gzdecode', $str, 'FORCE_GZIP'); _run_function('gzencode', 'gzdecode', $str, 'FORCE_DEFLATE'); _run_function('gzcompress', 'gzuncompress', $str, 'ZLIB_ENCODING_DEFLATE'); _run_function('gzcompress', 'gzuncompress', $str, 'ZLIB_ENCODING_GZIP'); _run_function('gzcompress', 'gzuncompress', $str, 'ZLIB_ENCODING_RAW'); _run_function('gzdeflate', 'gzinflate', $str, 'ZLIB_ENCODING_DEFLATE'); _run_function('gzdeflate', 'gzinflate', $str, 'ZLIB_ENCODING_GZIP'); _run_function('gzdeflate', 'gzinflate', $str, 'ZLIB_ENCODING_RAW');

preferences:
50.47 ms | 402 KiB | 5 Q