On Mar 14, 2008, at 3:15 PM, Eric Gorr wrote:
On Mar 14, 2008, at 3:10 PM, Stut wrote:
On 14 Mar 2008, at 19:03, Eric Gorr wrote:
Unfortunately, such things cannot be used to wrap functions.
Erm, yes they can. Try it.
<?php
if (rand(0,1) == 0)
{
function arse()
{
echo "arse 1\n";
}
}
else
{
function arse()
{
echo "arse 2\n";
}
}
arse();
?>
Gives:
Parse error: syntax error, unexpected T_STRING in /Users/Eric/Sites/
ifWrapping.php on line 3
Oh, sorry, apparently there are some invisible characters in the text
you pasted which I had to zap first. Yes, this does work as expected.
However, try wrapping the arse function in a class.
<?php
class TestClass
{
if ( rand(0,1) == 0 )
{
function arse()
{
echo "arse 1\n";
}
}
else
{
function arse()
{
echo "arse 2\n";
}
}
}
$myVar = new TestClass;
$myVar->arse();
?>
That fails with:
Parse error: syntax error, unexpected T_IF, expecting T_FUNCTION in /
Users/Eric/Sites/ifWrapping.php on line 4
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php