Annotation of embedaddon/php/ext/standard/tests/array/array_diff_variation4.phpt, revision 1.1

1.1     ! misho       1: --TEST--
        !             2: Test array_diff() function : usage variations  - array with different data types as values
        !             3: --FILE--
        !             4: <?php
        !             5: /* Prototype  : array array_diff(array $arr1, array $arr2 [, array ...])
        !             6:  * Description: Returns the entries of $arr1 that have values which are not 
        !             7:  * present in any of the others arguments. 
        !             8:  * Source code: ext/standard/array.c
        !             9:  */
        !            10: 
        !            11: /*
        !            12:  * Test how array_diff() compares indexed arrays containing different
        !            13:  * data types as values in place of $arr2
        !            14:  */
        !            15: 
        !            16: echo "*** Testing array_diff() : usage variations ***\n";
        !            17: 
        !            18: // Initialise function arguments not being substituted (if any)
        !            19: $array = array(1, 2);
        !            20: 
        !            21: //get an unset variable
        !            22: $unset_var = 10;
        !            23: unset ($unset_var);
        !            24: 
        !            25: //get heredoc
        !            26: $heredoc = <<<END
        !            27: This is a heredoc
        !            28: END;
        !            29: 
        !            30: //array of values to iterate over
        !            31: $values = array(
        !            32: 
        !            33: /*1*/"empty array" => array(),
        !            34: 
        !            35: /*2*/
        !            36: "int" => array(
        !            37:       // int data
        !            38:       0,
        !            39:       1,
        !            40:       12345,
        !            41:       -2345),
        !            42: 
        !            43: /*3*/
        !            44: "float" => array(
        !            45:       // float data
        !            46:        10.5,
        !            47:        -10.5,
        !            48:        12.3456789000e10,
        !            49:        12.3456789000E-10,
        !            50:        .5),
        !            51: 
        !            52: /*4*/
        !            53: "null" => array(      
        !            54:       // null data
        !            55:       NULL,
        !            56:       null),
        !            57: 
        !            58: /*5*/
        !            59: "boolean" => array(
        !            60:       // boolean data
        !            61:       true,
        !            62:       false,
        !            63:       TRUE,
        !            64:       FALSE),
        !            65: 
        !            66: /*6*/
        !            67: "empty" => array(      
        !            68:       // empty data
        !            69:       "",
        !            70:       ''),
        !            71: 
        !            72: /*7*/
        !            73: "string" => array(
        !            74:       // string data
        !            75:       "string",
        !            76:       'string',
        !            77:       $heredoc),
        !            78:       
        !            79: /*8*/      
        !            80: "binary" => array(
        !            81:        // binary data
        !            82:        b"binary",
        !            83:           (binary)"binary"),
        !            84:           
        !            85: /*9*/     
        !            86: "undefined" => array(
        !            87:       // undefined data
        !            88:       @$undefined_var),
        !            89: 
        !            90: /*10*/
        !            91: "unset" => array(      
        !            92:       // unset data
        !            93:       @$unset_var)
        !            94: );
        !            95: 
        !            96: // loop through each element of the array for $arr2
        !            97: $iterator = 1;
        !            98: foreach($values as $value) {
        !            99:       echo "\n Iteration: $iterator \n";
        !           100:       var_dump( array_diff($array, $value) );
        !           101:       $iterator++;
        !           102: };
        !           103: 
        !           104: echo "Done";
        !           105: ?>
        !           106: --EXPECTF--
        !           107: *** Testing array_diff() : usage variations ***
        !           108: 
        !           109:  Iteration: 1 
        !           110: array(2) {
        !           111:   [0]=>
        !           112:   int(1)
        !           113:   [1]=>
        !           114:   int(2)
        !           115: }
        !           116: 
        !           117:  Iteration: 2 
        !           118: array(1) {
        !           119:   [1]=>
        !           120:   int(2)
        !           121: }
        !           122: 
        !           123:  Iteration: 3 
        !           124: array(2) {
        !           125:   [0]=>
        !           126:   int(1)
        !           127:   [1]=>
        !           128:   int(2)
        !           129: }
        !           130: 
        !           131:  Iteration: 4 
        !           132: array(2) {
        !           133:   [0]=>
        !           134:   int(1)
        !           135:   [1]=>
        !           136:   int(2)
        !           137: }
        !           138: 
        !           139:  Iteration: 5 
        !           140: array(1) {
        !           141:   [1]=>
        !           142:   int(2)
        !           143: }
        !           144: 
        !           145:  Iteration: 6 
        !           146: array(2) {
        !           147:   [0]=>
        !           148:   int(1)
        !           149:   [1]=>
        !           150:   int(2)
        !           151: }
        !           152: 
        !           153:  Iteration: 7 
        !           154: array(2) {
        !           155:   [0]=>
        !           156:   int(1)
        !           157:   [1]=>
        !           158:   int(2)
        !           159: }
        !           160: 
        !           161:  Iteration: 8 
        !           162: array(2) {
        !           163:   [0]=>
        !           164:   int(1)
        !           165:   [1]=>
        !           166:   int(2)
        !           167: }
        !           168: 
        !           169:  Iteration: 9 
        !           170: array(2) {
        !           171:   [0]=>
        !           172:   int(1)
        !           173:   [1]=>
        !           174:   int(2)
        !           175: }
        !           176: 
        !           177:  Iteration: 10 
        !           178: array(2) {
        !           179:   [0]=>
        !           180:   int(1)
        !           181:   [1]=>
        !           182:   int(2)
        !           183: }
        !           184: Done

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