Niekedy môže byť potrebné na účely programovania odstrániť z reťazca špeciálne znaky. PHP má mnoho vstavaných funkcií, ktoré je možné použiť na odstránenie špeciálnych znakov z reťazcových údajov. Tento tutoriál vám ukáže, ako použiť niekoľko rôznych typov vstavaných funkcií PHP na odstránenie špeciálnych znakov z reťazca.
Funkcia str_replace ()
Jednou z užitočných funkcií, ktoré je možné použiť na odstránenie špeciálnych znakov z reťazca, je str_replace () funkciu. Na odstránenie zadaného znaku v tejto funkcii je potrebné použiť prázdny reťazec. Syntax tejto funkcie je uvedená nižšie.
str_replace ($ search_str, $ replace_str, $ main_str [,počet dolárov ])
The str_replace () funkcia môže mať štyri argumenty. Prvé tri argumenty sú povinné a posledný argument je voliteľný. The $ search_str premenná ukladá hodnotu, ktorá sa bude hľadať v reťazci. The $ replace_str premenná ukladá hodnotu, ktorá bude nahradená z reťazca, v ktorom sa zhoduje hľadaný text. Ako hodnotu súboru musíte použiť prázdny reťazec $ replace_str premenná na odstránenie hľadaného textu z hlavného reťazca. The počet dolárov argument ukladá hodnotu, ktorá predstavuje počet nahradených alebo odstránených znakov.
Príklad: Použitie str_replace () na odstránenie špeciálnych znakov
Nasledujúci skript ukazuje použitie súboru str_replace () funkcia na odstránenie špeciálneho znaku z reťazca údajov. V skripte je deklarovaná užívateľom definovaná funkcia na vykonanie úlohy nahradenia. The hash (#), jednoduchá úvodzovka (') a bodkočiarka (;) znaky sa používajú ako vyhľadávacie znaky, zatiaľ čo prázdny reťazec sa používa ako náhradný text pre tieto znaky.
/* Nasledujúci skript niektoré odstráni
špeciálne znaky z reťazca pomocou str_replace ()
funkciu
* /
// Definujte hlavný reťazec
$ mainstr = '#Toto je jednoduchý text;';
// Výstup pred odstránením
zahodil ' Text pred odstránením:
'.$ mainstr;
// Zavolajte funkciu
$ replacestr =rm_special_char($ mainstr);
// Definujte funkciu na odstránenie priestorového znaku
funkciurm_special_char($ str) {
// Odstráňte '#', '' 'a'; ' pomocou funkcie str_replace ()
$ výsledok = str_replace ( pole ('#', '' ', ';'), '', $ str);
// Výstup po odstránení
zahodil '
Text po odstránení:
'.$ výsledok;
}
?>
Výkon
Po spustení vyššie uvedeného skriptu sa zobrazí nasledujúci výstup. Hodnota hlavného textu sa vytlačí pred zavolaním na str_replace () funkciu a tri špeciálne znaky sa odstránia z hlavného textu a vytlačia sa neskôr.
Funkcia preg_replace ()
The preg_replace () funkcia sa používa na nahradenie reťazcových údajov na základe vyhľadávacieho vzoru. Syntax tejto funkcie je uvedená nižšie.
preg_replace ( $ vzor, $ nahradiť, $ reťazec [,$ limit [,počet dolárov]] )Táto funkcia môže obsahovať päť argumentov. Prvé tri argumenty sú povinné a posledné dva argumenty sú voliteľné. The $ vzor argument sa používa na definovanie vzoru na vyhľadávanie znakov v reťazci. The $ nahradiť Na definovanie náhradného textu sa používa argument a náhradný text bude prázdny reťazec používaný na odstránenie špeciálnych znakov. The $ reťazec argument sa používa na definovanie hlavného reťazca, v ktorom sa vzor vyhľadá a nahradí.
Príklad: Použitie preg_replace () na odstránenie špeciálnych znakov
Nasledujúci skript ukazuje použitie súboru preg_replace () funkcia na odstránenie konkrétneho špeciálneho znaku z reťazcových údajov. Na vyhľadanie znakov sa vo funkcii používa vzor „[0-9/[0-9%$?]]/S. V údajoch reťazca sa vyhľadajú všetky znaky „%“, „$“ a „?“ A tieto znaky sa nahradia prázdnym reťazcom, ak znaky existujú.
/* Nasledujúci skript niektoré odstráni
špeciálne znaky z reťazca pomocou preg_replace ()
funkciu
* /
// Definujte hlavný reťazec
$ mainstr = '200 Páči sa mi to$ phpprogramovanie 50%? ';
// Výstup pred odstránením
zahodil ' Text pred odstránením:
'.$ mainstr;
// Zavolajte funkciu
$ replacestr =rm_special_char($ mainstr);
// Definujte funkciu na odstránenie priestorového znaku
funkciurm_special_char($ str) {
// Odstráňte '#', '' 'a'; ' pomocou funkcie str_replace ()
$ výsledok = preg_replace ('/[0-9%$?]/S','', $ str);
// Výstup po odstránení
zahodil '
Text po odstránení:
'.$ výsledok;
}
?>
Výkon
Po spustení skriptu sa zobrazí nasledujúci výstup. Hodnota hlavného textu sa vytlačí pred zavolaním na preg_replace () funkciu. The 200, 50, „%“ a „?“ znaky budú z hlavného textu odstránené a vytlačené neskôr.
The htmlspecialchars () a str_ireplace () Funkcie
The htmlspecialchars () a str_ireplace () funkcie sa používajú na prevod všetkých preddefinovaných znakov do HTML. Napríklad, ' < “Sa zmení na„ & lt '' ' & “Sa zmení na„ & amp “Atď. Tieto funkcie môžete použiť na odstránenie účinku akýchkoľvek preddefinovaných znakov z reťazcových údajov.
Príklad: Použitie htmlspecialchars () a str_ireplace () na odstránenie špeciálnych znakov
Nasledujúci skript ukazuje, ako odstrániť efekt preddefinovaných znakov z reťazca pomocou htmlspecialchars () funkciu. Potom str_ireplace () funkcia sa používa na odstránenie entít HTML z textu. The str_ireplace () funkcia funguje ako str_replace () funkciu, ale môže vykonávať vyhľadávanie bez rozlišovania malých a veľkých písmen. Hlavný reťazec obsahuje text s príponou< h2 > a< b > značky. Keď sa teda text vytlačí pred odstránením účinku preddefinovaných znakov, reťazec sa zobrazí s efektom hlavičky HTML a hrubých značiek. Po použití daných funkcií sa zobrazí obyčajný text.
// Definujte hlavný reťazec
$ mainstr = '
Vitajte v Linuxová rada
';// Výstup so značkami HTML
zahodil „Text pred odstránením:“.$ mainstr;
// Výstup po odstránení značiek HTML
zahodil „Text po odstránení:
'.
str_ireplace ( pole (' ', ' ','
'
,''),'',htmlspecialchars ($ mainstr));
?>
Výkon
Po spustení skriptu sa zobrazí nasledujúci výstup.
Funkcia trim ()
The funkcia trim () sa používa na odstránenie konkrétnych znakov zo začiatku a konca reťazca údajov. Táto funkcia nemôže odstrániť znaky uprostred reťazca údajov. Túto funkciu teda môžete použiť iba vtedy, ak chcete odstrániť špeciálne znaky zo začiatku a konca reťazca.
Príklad: Použitie súboru funkcia trim () na odstránenie špeciálnych znakov
Nasledujúci skript ukazuje použitie súboru funkcia trim () odstrániť ' @ “A„ ! 'Znaky od začiatku a konca reťazcovej premennej $ mainstr . Hodnota súboru $ mainstr premenná sa vytlačí pred aj po odstránení znakov.
// Definujte hlavný reťazec
$ mainstr = '@@ Web Programming !!!.';
// Výstup pred použitím trim ()
zahodil ' Text pred odstránením:
'.$ mainstr;
// Výstup po použití trim ()
zahodil '
Text po odstránení:
'. orezať ($ mainstr,'@!');
?>
Výkon
Po spustení skriptu sa zobrazí nasledujúci výstup. Tu dve ' @ “Znaky sú odstránené od začiatku a tri„ ! Znaky ‘sú odstránené z konca reťazcovej premennej $ mainstr .
Záver
Tento tutoriál vám ukázal štyri rôzne spôsoby odstraňovania špeciálnych znakov z reťazcových údajov. Dúfam, že tento návod pomôže čitateľom uplatniť funkcie uvedené v tomto článku vo svojom skripte.