Find this useful? Enter your email to receive occasional updates for securing PHP code.

Signing you up...

Thank you for signing up!

PHP Decode

--TEST-- Test strrchr() function : usage variations - heredoc string containing special ch..

Decoded Output download

*** Testing strrchr() function: with heredoc strings ***

Did this file decode correctly?

Original Code

--TEST--
Test strrchr() function : usage variations - heredoc string containing special chars for 'haystack'
--FILE--
<?php
/* Test strrchr() function by passing heredoc string containing special chars for haystack
 * and with various needles
*/

echo "*** Testing strrchr() function: with heredoc strings ***\n";
$special_chars_str = <<<EOD
Example of heredoc string contains
$#%^*&*_("_")!#@@!$#$^^&*(special)
chars.
EOD;

$heredoc_needle = <<<EOD
^^&*(
EOD;

$needles = array(
  "!@@!",
  '_',
  '("_")',
  "$*",
  "(special)",
  $heredoc_needle,  //needle as heredoc string
  $special_chars_str  //needle as haystack
);

//loop through to test strrchr() with each needle
foreach($needles as $needle) {
  var_dump( strrchr($special_chars_str, $needle) );
}
echo "*** Done ***";
?>
--EXPECT--
*** Testing strrchr() function: with heredoc strings ***
string(24) "!$#$^^&*(special)
chars."
string(31) "_")!#@@!$#$^^&*(special)
chars."
string(16) "(special)
chars."
string(21) "$^^&*(special)
chars."
string(16) "(special)
chars."
string(19) "^&*(special)
chars."
string(76) "Example of heredoc string contains
$#%^*&*_("_")!#@@!$#$^^&*(special)
chars."
*** Done ***

Function Calls

strrchr 1

Variables

$needle !@@!
$needles [{'key': 0, 'value': '!@@!'}, {'key': 1, 'value': '_'}, {'key': 2, 'value': '("_")'}, {'key': 3, 'value': '$*'}, {'key': 4, 'value': '(special)'}, {'key': 5, 'value': '^^&*(\n'}, {'key': 6, 'value': 'Example of heredoc string contains\n$#%^*&*_("_")!#@@!$#$^^&*(special)\nchars.\n'}]
$heredoc_needle ^^&*(
$special_chars_str Example of heredoc string contains $#%^*&*_("_")!#@@!$#$^^&*..

Stats

MD5 d39d8c45f889694e3a28572c388aaa53
Eval Count 0
Decode Time 1177 ms