1--TEST-- 2Bug #24403 (scope doesn't properly propagate into internal functions) 3--FILE-- 4<?php 5class a 6{ 7 public $a = array(); 8 9 function a() 10 { 11 $output = preg_replace( 12 '!\{\s*([a-z0-9_]+)\s*\}!sie', 13 "(in_array('\\1',\$this->a) ? '\'.\$p[\'\\1\'].\'' : 14'\'.\$r[\'\\1\'].\'')", 15 "{a} b {c}"); 16 } 17} 18new a(); 19?> 20--EXPECT-- 21