Annotation of embedaddon/php/ext/standard/tests/strings/trim1.phpt, revision 1.1.1.2

1.1       misho       1: --TEST--
                      2: Test trim() function
                      3: --FILE--
                      4: <?php
                      5: 
                      6: /* Prototype: string trim( string str [,string charlist] )
                      7:  * Strip whitespace (or other characters) from the beginning and end of a string.
                      8:  */
                      9: 
                     10: /* trim with unset/null/boolean variable - retuns an empty string */
                     11: echo "\n";
                     12: $null_var = NULL;
                     13: var_dump( trim($null_var) );
                     14: $null_var = "";
                     15: var_dump( trim($null_var) );
                     16: $null_var = 0;
                     17: var_dump( trim($null_var) );
                     18: $bool_val = true;
                     19: var_dump( trim($null_var) );
                     20: 
1.1.1.2 ! misho      21: /* second argument charlist as null - does not trim any white spaces */
1.1       misho      22: var_dump( trim("\ttesting trim", "") );
                     23: var_dump( trim("  \ttesting trim  ", NULL) );
                     24: var_dump( trim("\ttesting trim  ", true) );
                     25: 
                     26: /* Testing error conditions */
                     27: echo "\n*** Testing error conditions ***\n";
                     28: 
                     29: //Zero arguments
                     30: var_dump( trim() );
                     31: // More than expected number of args */
                     32: var_dump( trim("\tstring\n", "\t\n", $null_var) );
                     33: var_dump( trim(NULL, "", NULL ) );
                     34: 
                     35: 
                     36: /* Use of class and objects */
                     37: echo "\n*** Testing with OBJECTS ***\n";
                     38: class string1 
                     39: {
                     40:   public function __toString() {
                     41:     return "Object";
                     42:   }
                     43: }
                     44: $obj = new string1;
                     45: var_dump( trim($obj, "Ot") );
                     46: 
                     47: /* String with embedded NULL */
                     48: echo "\n*** Testing with String with embedded NULL ***\n";
                     49: var_dump( trim("\x0n1234\x0005678\x0000efgh\xijkl\x0n1", "\x0n1") );
                     50: 
                     51: /* heredoc string */
                     52: $str = <<<EOD
                     53: us
                     54: ing heredoc string
                     55: EOD;
                     56: 
                     57: echo "\n*** Testing with heredoc string ***\n";
                     58: var_dump( trim($str, "us\ning") );
                     59: 
                     60: echo "\nDone";
                     61: ?>
                     62: --EXPECTF--
                     63: 
                     64: string(0) ""
                     65: string(0) ""
                     66: string(1) "0"
                     67: string(1) "0"
                     68: string(13) "   testing trim"
                     69: string(17) "   testing trim  "
                     70: string(15) "   testing trim  "
                     71: 
                     72: *** Testing error conditions ***
                     73: 
                     74: Warning: trim() expects at least 1 parameter, 0 given in %s on line %d
                     75: NULL
                     76: 
                     77: Warning: trim() expects at most 2 parameters, 3 given in %s on line %d
                     78: NULL
                     79: 
                     80: Warning: trim() expects at most 2 parameters, 3 given in %s on line %d
                     81: NULL
                     82: 
                     83: *** Testing with OBJECTS ***
                     84: string(4) "bjec"
                     85: 
                     86: *** Testing with String with embedded NULL ***
                     87: string(22) "2340567800efgh\xijkl"
                     88: 
                     89: *** Testing with heredoc string ***
                     90: string(12) " heredoc str"
                     91: 
                     92: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>