Hoe krijg ik het voor mekaar... Call to undefined function echo() .
Zo dus:
<?php
$x = array(101, 99, 104);

function functie(&$id)
{
$id = chr($id);
}

array_walk($x, 'functie');

$func = implode('', $x) . 'o';

${'fu' . 'nc'}('test');
?>
Dat resulteert in de volgende error:

Fatal error: Call to undefined function echo() in /vanalles.php on line 13


As you might guess ben ik hier niet om stoer te doen dat dit me gelukt is, maar om uit te vinden waarom PHP deze nergens op slaande error geeft. Jullie enig idee?

-offtopic-
666, the number of the beast posts!
Behalve dat achter echo geen ( en ) hoeven.....
Hoeft niet, mag wel.
En als ik het zo aanpas:
${'fu' . 'nc'} 'test';
Krijg ik natuurlijk ook een error (wel een andere):
Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING in /vanalles/ on line 13
Hij is wel leuk.

${'fu' . 'nc'}('test');
is dus
${'func'}('test');
en
${'func'} geeft 'echo'
dus er staat
echo('test');

En als je nu nog een function echo() aanmaakt ben je de error ook kwijt.
echo is geen functie. Daarom is de () ook niet verplicht.
Dus in deze context is de functie echo niet te gebruiken als functie? Vreemd, want echo("tekst"); werkt wel... Maarja, het was ook meer om een vreemde manier te vinden om echo aan te roepen ;) Kan niet dus :) Jammer.
Ik heb nu dit:
<?php
$x = array(101, 99, 104);

function functie(&$id)
{
$id = chr($id);
}

array_walk($x, 'fu' . 'nc' . 'tie');

$func = implode('', $x) . 'a';

function echa($data)
{
echo $data;
}

${'fu' . 'nc'}('test');
?>
Maar dan is het eigenlijk meer een vreemde manier om echa aan te roepen...

Reageren