Hallo,

ik heb een functie die mij een tabel opstelt, en de vakjes vult met iets wat ik wil meegeven als argument.

Ik wil die functie bijvoorbeeld kunnen oproepen met als argument :

<a href=>hier een linknaam</a>

Dat klinkt nog niet moeilijk MAAR, ik wil dat de href en daar waar nu "hier een linknaam" vervangen worden door een variabele. Het probleem is nu, die variabele is alleen gekend binnen die functie.

Dus als voorbeeld, binnen die functie wordt er een tellertje $teller bijgehouden, en ik wil dan bijvoorbeeld die functie oproepen en <a>$teller</a> als argument meegeven. Hoe moet ik dat doen met "" en '', want alle mogelijke combinaties die ik momenteel probeerden gaven iets fout.
Ofwel gaven ze een leegvakje ( omdat de variabele al buiten de functie werd geevalueerd, maar daar nog niet bekend is, ofwel gaf hij letterlijk DE NAAM van de variabele)

Danku
ik vat je idee niet helemaal, met het begin kom ik uit op:
<?php
function alink ($link, $string) {
return "<a href=\"".$link."\">".$string."</a>";
}
echo alink("http://www.phphulp.nl/";, "PHPhulp");
?>
Het is eerder als volgend :

function test($string){
$siteAdress = anderephp.php;
echo string;
}

$temp = "<a href=$siteAdress>Hallo</a>";
test($temp);

En ik wil daarbij als output, een link naar $siteAdress. Ik wil dus, dat de variabele $siteAdress, pas wordt vervangen door zijn waarde, in de functie zelf.

Dankjewel voor de moeite al.
<?php
// initialiseren
$siteAdress = '';

function test($string)
{
// bekend maken in de funtion
global $siteAdress;
// er verandert niks aan $string
$siteAdress = 'anderephp.php';
// dus onveranderd
echo string;
}

// $siteAdress is leeg
$temp = '<a href="' . $siteAdress . '">Hallo</a>';
// output zal zijn: <a href="">Hallo</a>
test($temp);
?>
Gaat dus niet werken.

Waarschijnlijk snap ik niet wat je nou precies wilt.
Ik snap een beetje wat je wilt, doe dit dan:

<?php
function test ($string) {
$siteAdress = "anderephp.php";
return str_replace('{link}', $siteAdress, $string);
}

echo test ("<a href=\"{link}\">Hallo</a>");
?>

Dat is denk ik wat jij bedoelt..

[edit]typo[/edit]
[edit]scriptbug fixed[/edit]
[edit]np Filip[/edit]
Dankje, het is nog niet volledig wat ik wou, maar mss heb je me wel geinspireerd om het nog eens op een andere manier te gaan oplossen. Als het niet lukt, kom ik mijn vraag nog wel eens anders stellen ;-)

Merci

Reageren