Annotation of embedaddon/php/ext/spl/tests/iterator_053.phpt, revision 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>