Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Umlaute in Switch-Anweisung

Frage Entwicklung PHP

Mitglied: WaldSchr4T

WaldSchr4T (Level 1) - Jetzt verbinden

15.12.2005, aktualisiert 16.12.2005, 4120 Aufrufe, 1 Kommentar

Hallo! Wir haben ein Problem mit den Umlauten in der Switch-Anweisung!

<font class="code">

// überprüfen ob ein Name nur zugelassene Zeichen enthält
function isname($string)
{
for($i=0;$i<strlen($string);$i++)
{
echo ord($string[$i]) . "";
switch($string[$i])
{
case "A":
case "B":
case "C":
........
case "w":
case "x":
case "y":
case "z":
case ".":
case "-":
case 'ä':
case 'ü':
case 'ö':
case 'ß':
case "Ä":
case "Ü":
case "Ö":
case " ":
break;
default:
return false;

}
}
return true;
}
</font>

Als ascii-code sind alle Sonderzeichen 195, also kommt man in den default-Zweig. Wie kann man das lösen? Danke!
Mitglied: Guenni
16.12.2005 um 16:50 Uhr
@WaldSchr4T

Hi,

versuch's mal so:

Ein Text:
<font class="code">
$text="Düsseldorf";
</font>
Textlänge in tl1 speichern:
<font class="code">
$tl1=strlen($text);
</font>
Die folg. Funktion durchsucht $text nach den in den eckigen Klammern, gültigen
Zeichen. Wird ein Zeichen gefunden, das nicht in den eckigen Klammern
aufgelistet ist, wird die Suche abgebrochen, die Anzahl der bis dahin
gefundenen Zeichen wird in $tl2 gespeichert, das Ergebnis in $erg, bzw. $erg[0]:
<font class="code">
$tl2=ereg("[a-zA-ZäöüÄÖÜß]{0,}",$text,$erg);
</font>
Textlängenvergleich und Ergebnisausgabe:
<font class="code">
if($tl1==$tl2){
echo "$erg[0] ist OK!";
}else{
echo "$erg[0] ist nicht OK!"; Testausgabe vom Ergebnis
echo "$text ist nicht OK!";
}
</font>

Gruß
Günni
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Sticky Notes - Autostart unterbinden

Tipp von Pedant zum Thema Windows 10 ...

Ähnliche Inhalte
LAN, WAN, Wireless
Selbstsigniertes Zertifikat auf Brocade Switch erstellen (2)

Frage von Coreknabe zum Thema LAN, WAN, Wireless ...

Netzwerkmanagement
gelöst Cisco 300 Switch upgraden via Consolen Cable. Putty: Kann tftp client nicht öffnen (25)

Frage von M.Marz zum Thema Netzwerkmanagement ...

SAN, NAS, DAS
FibreChannel-Switch für eine SAN (13)

Frage von MrFrog zum Thema SAN, NAS, DAS ...

Heiß diskutierte Inhalte
Batch & Shell
gelöst Base64 Decode (Batch,VBS) (26)

Frage von clragon zum Thema Batch & Shell ...

Flatrates
DeutschlandLAN der Telekom - welche internen IPs? (19)

Frage von qualidat zum Thema Flatrates ...

LAN, WAN, Wireless
Wie Gäste ins Internet bringen? (15)

Frage von xSiggix zum Thema LAN, WAN, Wireless ...