strtr_basic.phpt 1.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. --TEST--
  2. Test strtr() function : basic functionality
  3. --FILE--
  4. <?php
  5. /* Prototype : string strtr(string $str, string $from[, string $to]);
  6. * Description: Translates characters in str using given translation pairs
  7. * Source code: ext/standard/string.c
  8. */
  9. echo "*** Testing strtr() : basic functionality ***\n";
  10. //definitions of required input variables
  11. $trans1_arr = array("t" => "T", "e" => "E", "st" => "ST");
  12. $trans2_arr = array('t' => 'T', 'e' => 'E', 'st' => 'ST');
  13. $heredoc_str = <<<EOD
  14. test strtr
  15. EOD;
  16. //translating single char
  17. var_dump( strtr("test strtr", "t", "T") );
  18. var_dump( strtr('test strtr', 't', 'T') );
  19. var_dump( strtr($heredoc_str, "t", "T") );
  20. //translating set of chars
  21. //$from and $to are of same length
  22. var_dump( strtr("test strtr", "test", "TEST") );
  23. var_dump( strtr('test strtr', 'test', 'TEST') );
  24. var_dump( strtr($heredoc_str, "test", "TEST") );
  25. //$from and $to are of different lengths, extra chars in the longer one are ignored
  26. var_dump( strtr("test strtr", "test", "TESTz") );
  27. var_dump( strtr('test strtr', 'testz', 'TEST') );
  28. var_dump( strtr($heredoc_str, "test", "TESTz") );
  29. //by using replace_pairs array
  30. var_dump( strtr("test strtr", $trans1_arr) );
  31. var_dump( strtr('test strtr', $trans2_arr) );
  32. var_dump( strtr($heredoc_str, $trans1_arr) );
  33. echo "*** Done ***";
  34. ?>
  35. --EXPECTF--
  36. *** Testing strtr() : basic functionality ***
  37. string(10) "TesT sTrTr"
  38. string(10) "TesT sTrTr"
  39. string(10) "TesT sTrTr"
  40. string(10) "TEST STrTr"
  41. string(10) "TEST STrTr"
  42. string(10) "TEST STrTr"
  43. string(10) "TEST STrTr"
  44. string(10) "TEST STrTr"
  45. string(10) "TEST STrTr"
  46. string(10) "TEST STrTr"
  47. string(10) "TEST STrTr"
  48. string(10) "TEST STrTr"
  49. *** Done ***