質問: 約10,000 strlen($json)を超えるケースもあり。 return $b64; // レスポンス ``` gzdeflate() gzcompress() を利用したケースもほぼ同値でした。 同文字列の出にくいJSON文字列は圧縮レスポンスに向かないのでしょうか。
回答: WebサーバーがApacheなら`mod_deflate`でレスポンスをgzipにした方がましだと思います。 > > ※正確には圧縮は効いているのですが、Base64エンコードすると効果がなくなります。 > > > 圧縮してもBASE64エンコードすると圧縮後のサイズから約1.3倍になります (ja.wikipedia.org)BASE64 > > この変換によって、データ量は4/3(約133%)になる[1]。また、MIMEの基準では76文字ごとに改行コードが入るため、この分の2バイトを計算に入れるとデータ量は約137%となる[2]。 > > >