Com eliminar els caràcters especials de la cadena de PHP

How Remove Special Characters From String Php



De vegades, és possible que hagueu d’eliminar caràcters especials d’una cadena amb finalitats de programació. PHP té moltes funcions integrades que es poden utilitzar per eliminar caràcters especials de dades de cadenes. Aquest tutorial us mostra com utilitzar uns quants tipus diferents de funcions integrades en PHP per eliminar caràcters especials d'una cadena.

La funció str_replace ()

Una funció útil que es pot utilitzar per eliminar caràcters especials d'una cadena és la str_replace () funció. La cadena buida s'ha d'utilitzar per substituir el caràcter d'aquesta funció per eliminar el caràcter especificat. La sintaxi d'aquesta funció es dóna a continuació.







str_replace ($ search_str, $ replace_str, $ main_str [,$ recompte ])

El str_replace () funció pot adoptar quatre arguments. Els tres primers arguments són obligatoris i l’últim argument és opcional. El $ search_str variable emmagatzema el valor que es buscarà a la cadena. El $ replace_str La variable emmagatzema el valor que se substituirà des de la cadena on coincideix el text de cerca. Heu d'utilitzar una cadena buida com a valor del fitxer $ replace_str variable per eliminar el text de cerca de la cadena principal. El $ recompte L'argument emmagatzema un valor que representa quants caràcters se substitueixen o s'eliminen.



Exemple: utilitzant str_replace () per eliminar els caràcters especials

El següent script mostra l'ús del fitxer str_replace () funció per eliminar un caràcter especial d'una cadena de dades. Es declara una funció definida per l'usuari a l'script per realitzar la tasca de reemplaçament. El hash (#), cometes simples (') i punt i coma (;) els caràcters s’utilitzen com a caràcters de cerca, mentre que la cadena buida s’utilitza com a text de substitució d’aquests caràcters.





/ * El següent script n'eliminarà alguns

caràcters especials d'una cadena amb str_replace ()

funció

* /




// Definiu la cadena principal

$ mainstr = '#Aquest és un text senzill;';



// La sortida abans de suprimir-la

trobo ' Text abans de suprimir:
'
.$ mainstr;



// Crida a la funció

$ replacestr =rm_special_char($ mainstr);



// Definiu la funció per eliminar el caràcter espacial

funciórm_special_char($ str) {

// Elimina '#', '' 'i'; ' mitjançant la funció str_replace ()

$ resultat = str_replace ( matriu ('#', '' ', ';'), '', $ str);

// La sortida després d'eliminar

trobo '
Text després d'eliminar:
'
.$ resultat;

}

?>

Sortida





La següent sortida apareixerà després d'executar l'script donat anteriorment. El valor del text principal s'imprimeix abans de trucar al fitxer str_replace () i els tres caràcters especials s’eliminen del text principal i s’imprimeixen més tard.



La funció preg_replace ()

El preg_replace () La funció s'utilitza per substituir les dades de cadenes basades en el patró de cerca. La sintaxi d'aquesta funció es dóna a continuació.

preg_replace ( $ patró, $ reemplaça, $ string [,$ límit [,$ recompte]] )

Aquesta funció pot adoptar cinc arguments. Els tres primers arguments són obligatoris i els dos darrers arguments són opcionals. El $ patró L'argument s'utilitza per definir el patró per cercar els caràcters d'una cadena. El $ reemplaça L'argument s'utilitza per definir el text de reemplaçament i el text de reemplaçament serà una cadena buida que s'utilitza per eliminar els caràcters especials. El $ string L'argument s'utilitza per definir la cadena principal en què es buscarà i substituirà el patró.

Exemple: utilitzar preg_replace () per eliminar caràcters especials

El següent script mostra l'ús del fitxer preg_replace () funció per eliminar un caràcter especial concret de les dades de la cadena. El patró '[0-9 / [0-9% $?] / S' s'utilitza a la funció per cercar els caràcters. Això cercarà tots els caràcters '%', '$' i '?' De les dades de la cadena i substituirà aquests caràcters per la cadena buida si existeixen els caràcters.



/ * El següent script n'eliminarà alguns

caràcters especials d'una cadena amb preg_replace ()

funció

* /




// Definiu la cadena principal

$ mainstr = '200 m'agrada$ phpprogramació: 50% ?. ';



// La sortida abans de suprimir-la

trobo ' Text abans de suprimir:
'
.$ mainstr;



// Crida a la funció

$ replacestr =rm_special_char($ mainstr);



// Definiu la funció per eliminar el caràcter espacial

funciórm_special_char($ str) {

// Elimina '#', '' 'i'; ' mitjançant la funció str_replace ()

$ resultat = preg_replace ('/ [0-9% $?] / S','', $ str);

// La sortida després d'eliminar

trobo '
Text després d'eliminar:
'
.$ resultat;

}

?>

Sortida

La següent sortida apareixerà després d'executar l'script. El valor del text principal s'imprimirà abans de trucar al fitxer preg_replace () funció. El 200, 50, '%' i '?' els caràcters s’eliminaran del text principal i s’imprimiran més tard.

El htmlspecialchars () i str_ireplace () Funcions

El htmlspecialchars () i str_ireplace () les funcions s’utilitzen per convertir tots els caràcters predefinits en HTML. Per exemple, ' < 'Es convertirà en' & lt , '' & 'Es convertirà en' & amp Podeu utilitzar aquestes funcions per eliminar l’efecte de qualsevol caràcter predefinit de les dades de la cadena.

Exemple: utilitzant htmlspecialchars () i str_ireplace () per eliminar els caràcters especials

El següent script mostra com eliminar l’efecte dels caràcters predefinits d’una cadena mitjançant el fitxer htmlspecialchars () funció. Aleshores el str_ireplace () La funció s'utilitza per eliminar les entitats HTML del text. El str_ireplace () la funció funciona com la str_replace () funció, però pot fer cerques que distingeixen majúscules i minúscules. La cadena principal conté text amb< h2 > i< b > etiquetes. Per tant, quan el text s’imprimeixi abans d’eliminar l’efecte dels caràcters predefinits, la cadena es mostrarà amb l’efecte de capçalera HTML i etiquetes en negreta. El text pla es mostrarà després d'aplicar les funcions donades.





// Definiu la cadena principal

$ mainstr = '

Benvingut a LinuxHint

'
;



// La sortida amb etiquetes HTML

trobo 'Text abans de suprimir:'.$ mainstr;



// La sortida després d’eliminar les etiquetes HTML

trobo 'Text després d'eliminar:
'
.

str_ireplace ( matriu (' ', ' '
,'

','

'
),'',

htmlspecialchars ($ mainstr));



?>

Sortida

La següent sortida apareixerà després d'executar l'script.

La funció trim ()

El funció trim () s’utilitza per eliminar caràcters específics de l’inici i el final d’una cadena de dades. Aquesta funció no pot eliminar els caràcters del centre d'una cadena de dades. Per tant, només podeu utilitzar aquesta funció si voleu eliminar caràcters especials del començament i del final d’una cadena.

Exemple: utilitzant el fitxer trim () Funció per eliminar els caràcters especials

El següent script mostra l'ús del fitxer funció trim () per eliminar @ 'I' ! ’Caràcters des de l’inici i el final de la variable de cadena $ mainstr . El valor del fitxer $ mainstr La variable s'imprimirà tant abans com després d'eliminar els caràcters.





// Definiu la cadena principal

$ mainstr = '@@ Programació web !!!.';



// La sortida abans d'utilitzar trim ()

trobo ' Text abans de suprimir:
'
.$ mainstr;



// La sortida després d'utilitzar trim ()

trobo '
Text després d'eliminar:
'
. retallar ($ mainstr,'@!');



?>

Sortida

La següent sortida apareixerà després d'executar l'script. Aquí, dos ‘ @ ’S’eliminen els caràcters des del principi i tres ! Els caràcters s’eliminen del final de la variable de cadena $ mainstr .

Conclusió

Aquest tutorial us mostra quatre maneres diferents d’eliminar caràcters especials de les dades de cadenes. Espero que aquest tutorial ajudi els lectors a aplicar les funcions proporcionades en aquest article al seu script.