--TEST-- Test chunk_split() function : usage variations - different heredoc strings as 'str' argument --FILE-- <?php /* Prototype : string chunk_split(string $str [, int $chunklen [, string $ending]]) * Description: Returns split line * Source code: ext/standard/string.c * Alias to functions: none */ /* * Passing different heredoc strings as 'str' argument to the chunk_split() * with 'chunklen' 4 and default value of 'ending' that is "\r\n" */ echo "*** Testing chunk_split() : heredoc strings as 'str' argument ***\n"; // Initializing required variables $chunklen = 4; // Null heredoc string $heredoc_null = <<<EOT1 EOT1; // heredoc string with single character $heredoc_char = <<<EOT2 a EOT2; // simple heredoc string $heredoc_str = <<<EOT3 This is simple heredoc string EOT3; // heredoc with special characters $heredoc_spchar = <<<EOT4 This checks heredoc with $, %, &, chars EOT4; // blank heredoc string $heredoc_blank = <<<EOT5 EOT5; // heredoc with different white space characters $heredoc_escchar = <<<EOT6 This checks\t chunk_split()\nEscape\rchars EOT6; // heredoc with multiline $heredoc_multiline= <<<EOT7 This is to check chunk_split function with multiline heredoc EOT7; // heredoc with quotes and slashes $heredoc_quote_slash = <<<EOT8 "To check " in heredoc" I'm sure it'll work also with \ which is single slash EOT8; //different heredoc strings for 'str' $heredoc_arr = array( $heredoc_null, $heredoc_blank, $heredoc_char, $heredoc_str, $heredoc_multiline, $heredoc_spchar, $heredoc_escchar, $heredoc_quote_slash ); // loop through each element of the heredoc_arr for 'str' $count = 0; foreach($heredoc_arr as $str) { echo "-- Iteration ".($count+1). " --\n"; var_dump( chunk_split( $str, $chunklen) ); $count++; }; echo "Done" ?> --EXPECTF-- *** Testing chunk_split() : heredoc strings as 'str' argument *** -- Iteration 1 -- string(2) " " -- Iteration 2 -- string(2) " " -- Iteration 3 -- string(3) "a " -- Iteration 4 -- string(45) "This is simp le h ered oc s trin g " -- Iteration 5 -- string(90) "This is to c heck chu nk_s plit fun ctio n wi th m ulti line her edoc " -- Iteration 6 -- string(59) "This che cks here doc with $, %, & , ch ars " -- Iteration 7 -- string(59) "This che cks chu nk_s plit () E scap e ch ars " -- Iteration 8 -- string(117) ""To chec k " in h ered oc" I'm sure it' ll w ork also wit h \ whic h is sin gle slas h " Done