在 PHP 中刪除特殊字元

Muhammad Abubakar 2023年1月30日 2021年4月29日
  1. 使用 preg_replace() 函式刪除 PHP 中的特殊字元
  2. 使用 str_replace() 函式刪除 PHP 中的特殊字元
  3. 在 PHP 中使用 trim() 函式來刪除特殊字元
  4. 使用 htmlspecialchars()str_ireplace() 函式刪除 PHP 中的特殊字元
  5. 在 PHP 中使用 substr() 函式來刪除特殊字元
  6. 使用 strtr() 函式刪除 PHP 中的特殊字元
在 PHP 中刪除特殊字元

有時,在程式設計中,我們想從字串中刪除一些特殊字元。本教程說明了如何使用不同的功能從字串中刪除特殊字元。

使用 preg_replace() 函式刪除 PHP 中的特殊字元

preg_replace() 函式包含的引數很少,如下所述。

  • $pattern:此引數為我們提供了一種用於搜尋字串或字串數​​組的模式。
  • $replaceWith:在這種情況下,我們給出替換 $pattern 字串或陣列的字元。如果 $pattern 引數是一個陣列,而 $replaceWith 引數是一個字串,則所有 $pattern 引數將被 $replaceWith 字串替換。另一方面,如果 $pattern$replaceWith 引數都是陣列,則它與上述條件相同,只是用響應計數器索引 $replaceWith 替換了特定的索引 $pattern 字串。
  • $string:這是你要用特殊字元過濾的理想字串。

請參見下面的示例。

<?php
function RemoveSpecialChar($str)
{
    $res = preg_replace('/[0-9\@\.\;\" "]+/', '', $str);
    return $res;
}
$str = "My name is  hello and email hello.world598@gmail.com;";
$str1 = RemoveSpecialChar($str);
echo "My UpdatedString: ", $str1;
?>

輸出:

My UpdatedString: Mynameishelloandemailhelloworldgmailcom

在此函式中,你可以輕鬆刪除特殊字元,但是在使用此函式之前,你需要具有一些正規表示式知識。

使用 str_replace() 函式刪除 PHP 中的特殊字元

這也是一個非常有用的內建函式,用於替換字串中的特殊字元。str_replace() 還可幫助用刪除的字元替換該字元。

此函式包含很少的引數,如下所述。

  • $search_str:它包含我們要在給定字串中搜尋的值。
  • $replace_str:它儲存你要替換的值,或者,如果你只想刪除特殊字元,也可以將其保留為空。
  • $main_str:這是我們要更新的字串。
  • $count:代表我們要替換或刪除的字元數。

請參閱示例程式碼。

<?php
$mainstr = "This is a sim'ple text;";
echo "Text before remove: \n" . $mainstr, "\n";
$replacestr = remove_sp_chr($mainstr);
function remove_sp_chr($str)
{
    $result = str_replace(array("#", "'", ";"), '', $str);
    echo "\n\nText after remove: \n" . $result;
}
?>

輸出:

Text before remove: 
This is a sim'ple text;


Text after remove: 
This is a simple text

在 PHP 中使用 trim() 函式來刪除特殊字元

此函式僅從字串的開頭和結尾刪除字元。它忽略字串中間的字元。如果你只想刪除字元的開頭和結尾,則可以使用此函式。

此函式易於使用,並且不需要太多引數。它僅需要你要從中刪除其第一個和最後一個特殊字元的主字串。
在下面,我們看到了它的工作原理以及它的輸出是什麼。

<?php
$mainstr = "@@PHP@Programming!!!.";
echo "Text before remove:\n" . $mainstr;
echo "\n\nText after remove: \n" . trim($mainstr, '@!.');
?>

輸出:

Text before remove:
@@PHP@Programming!!!.

Text after remove: 
PHP@Programming  

此函式也有兩個變體。

  • ltrim()
  • rtrim()

ltrim() 函式

它僅刪除字串的第一個字元。

<?php
$str = "geeks";
$str = ltrim($str, 'g');
echo $str;
?>

輸出:

eeks

rtrim() 函式

與上面的函式相同,但是可以刪除字串的最後一個字元。

<?php
$string = "DelftStack is a best platform.....";
echo "Output:  " . rtrim($string, ".");
?>

輸出:

Output: DelftStack is a best platform

使用 htmlspecialchars()str_ireplace() 函式刪除 PHP 中的特殊字元

htmlspecialchars()str_ireplace() 用於從資料中刪除預定義字元的影響。它將 Html 的所有預定義元素轉換為特殊字元,就像將 < 轉換為&lt,&一樣,然後將其轉換為&amp

str_ireplace() 用於從文字中刪除 HTML 字元。它的作用類似於 str_replace(),上面已作了簡要說明,並且可以執行不區分大小寫的搜尋。這意味著當我們在此函式中以及在處理完 Html 程式碼後,會刪除 Html 的所有特殊字元,例如

, 等。

讓我們看看它是如何工作的:

<?php
$mainstr = "<h2>Welcome to <b>PHPWorld</b></h2>";

echo "Text before remove: \n" . $mainstr;

echo "\n\nText after remove: \n" .
    str_ireplace(array('&lt;b&gt;', '&lt;/b&gt;', '&lt;h2&gt;', '&lt;/h2&gt;'), '',
    htmlspecialchars($mainstr));
?>

輸出:

Text before remove: 
<h2>Welcome to <b>PHPWorld</b></h2>

Text after remove: 
Welcome to PHPWorld

在 PHP 中使用 substr() 函式來刪除特殊字元

眾所周知,字串是一種陣列。substr() 函式最多刪除特定的字元索引。

<?php
$str = "@@HelloWorld";
$str1 = substr($str, 1);
echo $str1 . "\n\n";
$str1 = substr($str, 2);
echo $str1;
?>

輸出:

@HelloWorld
HelloWorld

使用 strtr() 函式刪除 PHP 中的特殊字元

此函式是 PHP 的一個了不起的功能。它轉換字元或替換子字串。它包含三個引數,第一個是要在其上應用此函式的字串,第二個引數是要從該字串中替換的字元,最後一個引數是要從中替換該值的字元第二個引數。現在我們看一下程式設計:

<?php
$str = "ei all, I said eello";
//$trans = array("h" => "-", "hello" => "hi", "hi" => "hello");
echo "Output:  " . strtr($str, "e", "h");
?>

輸出:

Output: hi all, I said hhllo

str_replace() 變得失敗時,它有一個很好的特點。下面是它的例子。

<?php
$strTemplate = "My name is :name, not :name2.";
$strParams = [
    ':name' => 'Dave',
    'Dave' => ':name2 or :password',
    ':name2' => 'Steve',
    ':pass' => '7hf2348', ];
echo "\n" . strtr($strTemplate, $strParams) . "\n";
echo "\n" . str_replace(array_keys($strParams), array_values($strParams), $strTemplate) . "\n";


?>

輸出:

My name is Dave, not Steve.
My name is Steve or 7hf2348word, not Steve or 7hf2348word2.

相關文章 - PHP String