PHP strtr() 函数详解

strtr() 是 PHP 中的一个内置函数,我们主要用它来将字符串中的特定子串替换为给定的字符。此外,它还提供了将特定单词更替为另一个单词的选项。需要注意的是,该函数区分大小写。
语法:

strtr($string, $string1, $string2) 

或者,

strtr($string, $arr)

参数: 如上述语法所示,该函数接受三个参数,具体描述如下:

  • $string: 它指定需要进行替换操作的目标字符串。这是一个必填参数。
  • $string1: 它指定了需要在 $string 中查找并替换的字符字符串。如果不使用数组参数,这是必填项。
  • $string2: 它指定了将 $string1 中的字符替换成的新字符字符串。如果不使用数组参数,这是必填项。
  • $arr: 我们可以传递 ($string1$string2) 组合,或者直接传递一个 $array 作为参数。当我们想要更改特定的子字符串时,通常会传递数组。该 $array 的键名包含待替换的字符串,键值包含替换后的字符串。

注意: $string1$string2 长度不同时,较长的字符串将被格式化为与较短字符串相同的长度。
返回值: 该函数的返回值取决于以下两种情况:

  • 当传递 $string1$string2 作为参数时,它通过将 $string1 的字符更改为 $string2 的字符来返回转换后的字符串。
  • 如果传递 $array 作为参数,它通过将键名对应的字符串更改为键值对应的字符串来返回转换后的字符串。如果数组中存在任何键为空字符串 "" 的情况,则返回 false。

示例:

输入 : $string = "gieuz foh geeks", 
        $string1 = "iuzh"   ,    $string2="eksr"
输出 : geeks for geeks
**解释** : i 被替换为 e 
u 被替换为 k 
z 被替换为 s 
h 被替换为 r 

输入 : $string = "gieuz foh geeks",
        $string1 = "iuzh"   ,   $string2 = "eks"
输出 : geeks foh geeks 
**解释**: "iuzh" 被缩减为 "iuz",然后 
执行了替换操作。

输入: $string = "giiks in giiks",
       $arr = array("giiks" => "geeks", "in" => "for")
输出: geeks for geeks  
**解释**: "giiks" 被替换为 "geeks",
"in" 被替换为 "for"

下面的程序演示了 PHP 中的 strtr() 函数:

程序 1: 演示当传递长度相同的 string1 和 string2 时 strtr() 函数的用法。

php


CODEBLOCK_f4870ab1

输出:

geeks for geeks

程序 2: 演示当传递长度不同的 string1 和 string2 时 strtr() 函数的用法。

php


CODEBLOCK_6b1d3b61

输出:

geeks foh geeks

程序 3: 演示 strtr() 函数替换字符串中所有出现字符的用法。

php


CODEBLOCK_f7955b74

输出:

geeks for geeks

程序 4: 演示当传递数组作为参数时 strtr() 函数的用法。

php


CODEBLOCK_359d77cb

输出:

geeks for geeks

程序 5: 演示当传递的数组中存在一个键为空字符串 "" 时的情况。

php


CODEBLOCK_c7d56b5a

输出:

No Output

参考:
https://www.php.net/manual/en/function.strtr.php

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。如需转载,请注明文章出处豆丁博客和来源网址。https://shluqu.cn/43556.html
点赞
0.00 平均评分 (0% 分数) - 0