Archivlink: javarea.de Forum > PHP, MySQL & CGI > Eigene Funktion in PHP definieren
Vollständigen Link anzeigen: javarea.de Forum > PHP, MySQL & CGI > Eigene Funktion in PHP definieren
Pages: [1]
| geschrieben von Beat am 28.09.2008 - 14:10 |
Hallo die Damen und Herren,
es ist mal wieder soweit, ich hät da mal ne fräge:
Wie definier ich in PHP eine Funktion?
Ich will eine Funktion definieren, die mir aus einem String die Zeichenfolgen oe, ue, und ae durch "ö" , "ü" , "ä"
ersetzt, damit ich den string dann in HTML ausgeben kann.
Grüsse aus Schweizland
Beat |
| geschrieben von Klaush am 28.09.2008 - 15:52 |
in dem du die Funktion wie in allen anderen Sprachen bennenst?
| PHP-Quelltext | 1:
2:
3:
4:
5:
6:
7:
8:
9:
|
<?
meineFunktion function($zeichenkette="")
{
$str = ereg_replace("ü", "ü", $zeichenkette);
usw...
return $str;
}
?>
|
Aufruf der Funktion:
| PHP-Quelltext | 1:
2:
3:
4:
|
<?
$text= "Hier stünde dein neuer Satz.";
echo meineFunktion($text):
?>
|
|
| geschrieben von Beat am 28.09.2008 - 17:06 |
Hallo Klaus,
danke für Deine rasche Hilfe, ich habe leider folgende Fehlermeldung erhalten:
"Parse error: syntax error, unexpected T_FUNCTION in file_read2.php on line 2"
Zeile 2 ist: "meineFunktion function($zeichenkette="")"
Ich habe dann folgenden weg gewählt:
| PHP-Quelltext | 1:
2:
3:
4:
5:
6:
7:
8:
9:
|
<?
function myStringChange ($string)
{
$string = ereg_replace('oe','ö',$string);
$string = ereg_replace('ue','ü',$string);
$string = ereg_replace('ae','ä',$string);
return $string;
}
?>
|
Ich rufe dann folgendermasen auf:
| PHP-Quelltext | 1:
2:
3:
|
<?
$string = call_user_func(myStringChange,$string);
?>
|
Der Code scheint so zu laufen.
Nochmals danke für die Hilfe
|
| geschrieben von Klaush am 28.09.2008 - 17:58 |
Da war einfach nur ein Zeichen falsch. Em Ende muss natürlich ein Semikolon ";" stehen und ein Doppelpunkt ":".
Das Aufrufen der call_user_func() die dann deine spezifische Funktion aufruft ist aus meiner Sicht Kontraproduktiv und macht keinen Sinn, aber funktionieren wird es, da es ein PHP Standard ist. Die Vor - und Nachteile der call_user_func() sind mir jedoch fremd, da ich diese Funktion nie verwendet habe. |
| geschrieben von Beat am 29.09.2008 - 12:16 |
@Kalus,
Sorry, ist mir nicht aufgefallen, dass da ein : statt einem ; war.
Ich werde das natürlich nochmals ausprobieren. |
| geschrieben von mosi am 04.10.2008 - 16:38 |
| Zitat von: Beat am 28.09.2008 - 17:06 | | |
Hallo Klaus,
danke für Deine rasche Hilfe, ich habe leider folgende Fehlermeldung erhalten:
"Parse error: syntax error, unexpected T_FUNCTION in file_read2.php on line 2"
Zeile 2 ist: "meineFunktion function($zeichenkette="")"
Ich habe dann folgenden weg gewählt:
| PHP-Quelltext | 1:
2:
3:
4:
5:
6:
7:
8:
9:
|
<?
function myStringChange ($string)
{
$string = ereg_replace('oe','ö',$string);
$string = ereg_replace('ue','ü',$string);
$string = ereg_replace('ae','ä',$string);
return $string;
}
?>
|
|
moin moin,
so lange du nur Zeichenketten ohne Verwendung von regulären Ausdrücken ersetzen willst, ist zu str_replace() geraten (performanter). Die Parametersyntax ist analog zu ereg_replace(). |
|