1--TEST-- 2Test imap_binary() function : basic functionality 3--SKIPIF-- 4<?php 5extension_loaded('imap') or die('skip imap extension not available in this build'); 6?> 7--FILE-- 8<?php 9/* Prototype : string imap_binary ( string $string ) 10 * Description: Convert an 8bit string to a base64 string. 11 * Source code: ext/imap/php_imap.c 12 */ 13 14echo "*** Testing imap_binary() : basic functionality ***\n"; 15 16echo "Encode as short string\n"; 17$str = b'This is an example string to be base 64 encoded'; 18$base64 = imap_binary($str); 19var_dump(bin2hex($base64)); 20 21echo "Encode a string which results in more than 60 charters of output\n"; 22$str = b'This is a long string with results in more than 60 characters of output'; 23$base64 = imap_binary($str); 24var_dump(bin2hex($base64)); 25 26echo "Encode a string with special characters\n"; 27$str = b'_+-={][];;@~#?/>.<,'; 28$base64 = imap_binary($str); 29var_dump(bin2hex($base64)); 30 31echo "Encode some hexadecimal data\n"; 32$hex = b'x00\x01\x02\x03\x04\x05\x06\xFA\xFB\xFC\xFD\xFE\xFF'; 33$base64 = imap_binary($hex); 34var_dump(bin2hex($base64)); 35 36?> 37===Done=== 38--EXPECTF-- 39*** Testing imap_binary() : basic functionality *** 40Encode as short string 41%string|unicode%(136) "5647687063794270637942686269426c654746746347786c49484e30636d6c755a794230627942695a53426959584e6c49445930494756755932396b0d0a5a57513d0d0a" 42Encode a string which results in more than 60 charters of output 43%string|unicode%(200) "56476870637942706379426849477876626d6367633352796157356e4948647064476767636d567a64577830637942706269427462334a6c4948526f0d0a595734674e6a416759326868636d466a64475679637942765a694276645852776458513d0d0a" 44Encode a string with special characters 45%string|unicode%(60) "5879737450587464573130374f30422b497a3876506934384c413d3d0d0a" 46Encode some hexadecimal data 47%string|unicode%(144) "65444177584867774d5678344d444a636544417a584867774e4678344d445663654441325848684751567834526b4a6365455a4458486847524678340d0a526b566365455a470d0a" 48===Done=== 49