????JFIF??x?x????'
| Server IP : 79.136.114.73 / Your IP : 216.73.216.191 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/ext/standard/tests/strings/ |
Upload File : |
--TEST--
Test chunk_split() function : usage variations - different integer values for 'chunklen' with heredoc string as 'str'(Bug#42796)
--SKIPIF--
<?php
if (PHP_INT_SIZE != 8) die("skip this test is for 64bit platform only");
?>
--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:
*/
/*
* passing different integer values for 'chunklen' and heredoc string for 'str' to chunk_split()
*/
echo "*** Testing chunk_split() : different 'chunklen' with heredoc 'str' ***\n";
// Initializing required variables
//heredoc string as str
$heredoc_str = <<<EOT
This's heredoc string with \t and \n white space char.
It has _speci@l ch@r$ 2222 !!!Now \k as escape char to test
chunk_split()
EOT;
$ending = ':::';
// different values for 'chunklen'
$values = array (
0,
1,
-123, //negative integer
0234, //octal number
0x1A, //hexadecimal number
PHP_INT_MAX, // max positive integer number
PHP_INT_MAX * 3, // integer overflow
-PHP_INT_MAX - 1, // min negative integer
);
// loop through each element of values for 'chunklen'
for($count = 0; $count < count($values); $count++) {
echo "-- Iteration ".($count+1). " --\n";
var_dump( chunk_split($heredoc_str, $values[$count], $ending) );
}
echo "Done"
?>
--EXPECTF--
*** Testing chunk_split() : different 'chunklen' with heredoc 'str' ***
-- Iteration 1 --
Warning: chunk_split(): Chunk length should be greater than zero in %s on line %d
bool(false)
-- Iteration 2 --
string(504) "T:::h:::i:::s:::':::s::: :::h:::e:::r:::e:::d:::o:::c::: :::s:::t:::r:::i:::n:::g::: :::w:::i:::t:::h::: ::: ::: :::a:::n:::d::: :::
::: :::w:::h:::i:::t:::e::: :::s:::p:::a:::c:::e::: :::c:::h:::a:::r:::.:::
:::I:::t::: :::h:::a:::s::: :::_:::s:::p:::e:::c:::i:::@:::l::: :::c:::h:::@:::r:::$::: :::2:::2:::2:::2::: :::!:::!:::!:::N:::o:::w::: :::\:::k::: :::a:::s::: :::e:::s:::c:::a:::p:::e::: :::c:::h:::a:::r::: :::t:::o::: :::t:::e:::s:::t:::
:::c:::h:::u:::n:::k:::_:::s:::p:::l:::i:::t:::(:::):::"
-- Iteration 3 --
Warning: chunk_split(): Chunk length should be greater than zero in %s on line %d
bool(false)
-- Iteration 4 --
string(129) "This's heredoc string with and
white space char.
It has _speci@l ch@r$ 2222 !!!Now \k as escape char to test
chunk_split():::"
-- Iteration 5 --
string(141) "This's heredoc string with::: and
white space char.:::
It has _speci@l ch@r$ 222:::2 !!!Now \k as escape char::: to test
chunk_split():::"
-- Iteration 6 --
string(129) "This's heredoc string with and
white space char.
It has _speci@l ch@r$ 2222 !!!Now \k as escape char to test
chunk_split():::"
-- Iteration 7 --
Warning: chunk_split(): Chunk length should be greater than zero in %s on line %d
bool(false)
-- Iteration 8 --
Warning: chunk_split(): Chunk length should be greater than zero in %s on line %d
bool(false)
Done