Php remove all symbols from string

Searching through the internet and this website as well, I've found several topics on the matter. Thing is, there are countless solutions if the inserted strings must contain only characters of the Latin alphabet, but when the case requires text of other alphabets it gets a bit tricky.

Is there any way I can strip in PHP all symbols from a string, but leave the actual letters of all UTF-8 alphabets? I have tried already creating an array of all the characters of my keyboard and then by using str_replace or preg_replace remove them, but then I found out that different countries have also different keyboards sometimes which include different symbols. For example, my qwerty keyboard doesn't have the £ symbol, which a British keyboard might have.

I know this is a weird question, I am just wondering if there is an easy solution to it which I may have missed.

Any help would be very much appreciated!

EDIT: OK After some better and extended Google-ing I have found out that the following regular expression works fine for what I need and it keeps all letters of all types of alphabets while removes all symbols. I am sharing it here in case somebody else would need to do the same.

$string = preg_replace['/[^\p{L}\p{N}\s]/u', '', $string];

In this article, we will see how to remove special characters from strings in PHP, along with understanding their implementation through the examples. We have given a string and we need to remove special characters from string str in PHP, for this, we have the following methods in PHP:

Using str_replace[] Method: The str_replace[] methodis used to remove all the special characters from the given string str by replacing these characters with the white space [” “].

Syntax:

str_replace[ $searchVal, $replaceVal, $subjectVal, $count ]

Example: This example illustrates the use of the str_replace[] function to remove the special characters from the string.

PHP

Chủ Đề