<?php

$a->test='test';

$b="\$pp=sprintf(\"this is a «\$a->test». Go!\");";
    eval($b);
    echo $b . " ==> " . $pp;
    echo "\n";
$b="\$pp=\"this is a «\$a->test». Go!\";";
    eval($b);
    echo $b . " ==> " . $pp;
    echo "\n";
$b="\$pp=sprintf(\"this is a «{\$a->test}». Go!\");";
    eval($b);
    echo $b . " ==> " . $pp;
    echo "\n";
$b="\$pp=\"this is a «\$a->test». Go!\";";
    eval($b);
    echo $b . " ==> " . $pp;
    echo "\n";
$b="\$pp=sprintf(\"this is a «\$a->test». Go!\");";
$b=preg_replace('/(\$a(->\w+)?)/', '{\\1}', $b);
    eval($b);
    echo $b . " (preg replaced) ==> " . $pp;
    echo "\n";
$b="\$pp=\"this is a «\$a->test». Go!\";";
$b=preg_replace('/(\$a(->\w+)?)/', '{\\1}', $b);
    eval($b);
    echo $b . " (preg replaced) ==> " . $pp;
    echo "\n";
$b="\$pp=sprintf(\"this is a «\$a->test». Go!\");";
$b=preg_replace('/(\$a(->\w+)?)/u', '{\\1}', $b);
    eval($b);
    echo $b . " (preg replaced with /u modifier) ==> " . $pp;
    echo "\n";
$b="\$pp=\"this is a «\$a->test». Go!\";";
$b=preg_replace('/(\$a(->\w+)?)/u', '{\\1}', $b);
    eval($b);
    echo $b . " (preg replaced with /u modifier) ==> " . $pp;
    echo "\n";
?>

