Annotation of embedaddon/php/ext/spl/tests/iterator_053.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: SPL: RegexIterator::ALL_MATCHES
                      3: --FILE--
                      4: <?php
                      5: 
                      6: class MyRegexIterator extends RegexIterator
                      7: {
                      8:        public $uk, $re;
                      9:        
                     10:        function __construct($it, $re, $mode, $flags = 0)
                     11:        {
                     12:                $this->uk = $flags & self::USE_KEY;
                     13:                $this->re = $re;
                     14:                parent::__construct($it, $re, $mode, $flags);
                     15:        }
                     16: 
                     17:        function show()
                     18:        {
                     19:                foreach($this as $k => $v)
                     20:                {
                     21:                        var_dump($k);
                     22:                        var_dump($v);
                     23:                }
                     24:        }
                     25:        
                     26:        function accept()
                     27:        {
                     28:                @preg_match_all($this->re, (string)($this->uk ? $this->key() : $this->current()), $sub);
                     29:                $ret = parent::accept();
                     30:                var_dump($sub == $this->current());
                     31:                return $ret;
                     32:        }
                     33: }
                     34: 
                     35: $ar = new ArrayIterator(array('1','1,2','1,2,3','',NULL,array(),'FooBar',',',',,'));
                     36: $it = new MyRegexIterator($ar, '/(\d),(\d)/', RegexIterator::ALL_MATCHES, RegexIterator::USE_KEY);
                     37: $it->show();
                     38: 
                     39: $it = new MyRegexIterator($ar, '/(\d)/', RegexIterator::ALL_MATCHES, RegexIterator::USE_KEY);
                     40: $it->show();
                     41: 
                     42: var_dump($ar);
                     43: 
                     44: ?>
                     45: ===DONE===
                     46: <?php exit(0); ?>
                     47: --EXPECTF--
                     48: bool(true)
                     49: int(0)
                     50: array(3) {
                     51:   [0]=>
                     52:   array(0) {
                     53:   }
                     54:   [1]=>
                     55:   array(0) {
                     56:   }
                     57:   [2]=>
                     58:   array(0) {
                     59:   }
                     60: }
                     61: bool(true)
                     62: int(1)
                     63: array(3) {
                     64:   [0]=>
                     65:   array(0) {
                     66:   }
                     67:   [1]=>
                     68:   array(0) {
                     69:   }
                     70:   [2]=>
                     71:   array(0) {
                     72:   }
                     73: }
                     74: bool(true)
                     75: int(2)
                     76: array(3) {
                     77:   [0]=>
                     78:   array(0) {
                     79:   }
                     80:   [1]=>
                     81:   array(0) {
                     82:   }
                     83:   [2]=>
                     84:   array(0) {
                     85:   }
                     86: }
                     87: bool(true)
                     88: int(3)
                     89: array(3) {
                     90:   [0]=>
                     91:   array(0) {
                     92:   }
                     93:   [1]=>
                     94:   array(0) {
                     95:   }
                     96:   [2]=>
                     97:   array(0) {
                     98:   }
                     99: }
                    100: bool(true)
                    101: int(4)
                    102: array(3) {
                    103:   [0]=>
                    104:   array(0) {
                    105:   }
                    106:   [1]=>
                    107:   array(0) {
                    108:   }
                    109:   [2]=>
                    110:   array(0) {
                    111:   }
                    112: }
                    113: bool(true)
                    114: int(5)
                    115: array(3) {
                    116:   [0]=>
                    117:   array(0) {
                    118:   }
                    119:   [1]=>
                    120:   array(0) {
                    121:   }
                    122:   [2]=>
                    123:   array(0) {
                    124:   }
                    125: }
                    126: bool(true)
                    127: int(6)
                    128: array(3) {
                    129:   [0]=>
                    130:   array(0) {
                    131:   }
                    132:   [1]=>
                    133:   array(0) {
                    134:   }
                    135:   [2]=>
                    136:   array(0) {
                    137:   }
                    138: }
                    139: bool(true)
                    140: int(7)
                    141: array(3) {
                    142:   [0]=>
                    143:   array(0) {
                    144:   }
                    145:   [1]=>
                    146:   array(0) {
                    147:   }
                    148:   [2]=>
                    149:   array(0) {
                    150:   }
                    151: }
                    152: bool(true)
                    153: int(8)
                    154: array(3) {
                    155:   [0]=>
                    156:   array(0) {
                    157:   }
                    158:   [1]=>
                    159:   array(0) {
                    160:   }
                    161:   [2]=>
                    162:   array(0) {
                    163:   }
                    164: }
                    165: bool(true)
                    166: int(0)
                    167: array(2) {
                    168:   [0]=>
                    169:   array(1) {
                    170:     [0]=>
                    171:     string(1) "0"
                    172:   }
                    173:   [1]=>
                    174:   array(1) {
                    175:     [0]=>
                    176:     string(1) "0"
                    177:   }
                    178: }
                    179: bool(true)
                    180: int(1)
                    181: array(2) {
                    182:   [0]=>
                    183:   array(1) {
                    184:     [0]=>
                    185:     string(1) "1"
                    186:   }
                    187:   [1]=>
                    188:   array(1) {
                    189:     [0]=>
                    190:     string(1) "1"
                    191:   }
                    192: }
                    193: bool(true)
                    194: int(2)
                    195: array(2) {
                    196:   [0]=>
                    197:   array(1) {
                    198:     [0]=>
                    199:     string(1) "2"
                    200:   }
                    201:   [1]=>
                    202:   array(1) {
                    203:     [0]=>
                    204:     string(1) "2"
                    205:   }
                    206: }
                    207: bool(true)
                    208: int(3)
                    209: array(2) {
                    210:   [0]=>
                    211:   array(1) {
                    212:     [0]=>
                    213:     string(1) "3"
                    214:   }
                    215:   [1]=>
                    216:   array(1) {
                    217:     [0]=>
                    218:     string(1) "3"
                    219:   }
                    220: }
                    221: bool(true)
                    222: int(4)
                    223: array(2) {
                    224:   [0]=>
                    225:   array(1) {
                    226:     [0]=>
                    227:     string(1) "4"
                    228:   }
                    229:   [1]=>
                    230:   array(1) {
                    231:     [0]=>
                    232:     string(1) "4"
                    233:   }
                    234: }
                    235: bool(true)
                    236: int(5)
                    237: array(2) {
                    238:   [0]=>
                    239:   array(1) {
                    240:     [0]=>
                    241:     string(1) "5"
                    242:   }
                    243:   [1]=>
                    244:   array(1) {
                    245:     [0]=>
                    246:     string(1) "5"
                    247:   }
                    248: }
                    249: bool(true)
                    250: int(6)
                    251: array(2) {
                    252:   [0]=>
                    253:   array(1) {
                    254:     [0]=>
                    255:     string(1) "6"
                    256:   }
                    257:   [1]=>
                    258:   array(1) {
                    259:     [0]=>
                    260:     string(1) "6"
                    261:   }
                    262: }
                    263: bool(true)
                    264: int(7)
                    265: array(2) {
                    266:   [0]=>
                    267:   array(1) {
                    268:     [0]=>
                    269:     string(1) "7"
                    270:   }
                    271:   [1]=>
                    272:   array(1) {
                    273:     [0]=>
                    274:     string(1) "7"
                    275:   }
                    276: }
                    277: bool(true)
                    278: int(8)
                    279: array(2) {
                    280:   [0]=>
                    281:   array(1) {
                    282:     [0]=>
                    283:     string(1) "8"
                    284:   }
                    285:   [1]=>
                    286:   array(1) {
                    287:     [0]=>
                    288:     string(1) "8"
                    289:   }
                    290: }
                    291: object(ArrayIterator)#%d (1) {
                    292:   ["storage":"ArrayIterator":private]=>
                    293:   array(9) {
                    294:     [0]=>
                    295:     %s(1) "1"
                    296:     [1]=>
                    297:     %s(3) "1,2"
                    298:     [2]=>
                    299:     %s(5) "1,2,3"
                    300:     [3]=>
                    301:     %s(0) ""
                    302:     [4]=>
                    303:     NULL
                    304:     [5]=>
                    305:     array(0) {
                    306:     }
                    307:     [6]=>
                    308:     %s(6) "FooBar"
                    309:     [7]=>
                    310:     %s(1) ","
                    311:     [8]=>
                    312:     %s(2) ",,"
                    313:   }
                    314: }
                    315: ===DONE===

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