PHP 中用破折号替换空格

Shraddha Paghdar 2023年1月30日
  1. 使用 PHP 中的 str_replace() 函数用破折号替换空格
  2. 在 PHP 中使用 str_ireplace() 函数用破折号替换空格
  3. 使用 PHP 中的 preg_replace() 函数用破折号替换空格
PHP 中用破折号替换空格

PHP 提供了三个函数来用字符串/数组中的另一个字符串/数组替换字符串/数组。本文将介绍所有这些用破折号(-)替换空格(" ")的函数。

使用 PHP 中的 str_replace() 函数用破折号替换空格

str_replace() 函数是一个集成的 PHP 函数,它将用替换字符串替换所有出现的搜索字符串。它根据传递的主题返回一个字符串或一个数组,其中 subject 中所有出现的 search 都被给定的 replace 值替换。此函数区分大小写,这意味着 search 不等于 SEARCH。该函数不支持正则表达式;如果你想替换正则表达式,请使用 preg_replace()

str_replace() 的语法

str_replace( 
    array|string $search, 
    array|string $replace, 
    string|array $subject,
    int &$count = null

): string|array

str_replace() 的参数

该函数接受 4 个参数,其中 3 个是强制性的,1 个是非强制性的。

  • $searchVal:这个参数通常是字符串和数组类型。它指定要由 replaceVal 替换的字符串。
  • $replaceVal:这个参数通常是字符串和数组类型。它指定要替换 $searchVal 的字符串。
  • $subjectVal:这个参数通常是字符串和数组类型。它包括要对其执行搜索和替换的字符串或字符串数​​组。
  • $count:这是一个非强制性参数。如果通过,其值将设置为对字符串 $subjectVal 执行的替换操作总数。

如果 searchreplace 是数组,则 str_replace() 从每个数组中获取一个值并使用它们来搜索和替换主题。如果 replace 的值少于搜索值,则空字符串将用于其余的替换值。如果 search 是一个数组而 replace 是一个字符串,则替换字符串用于每个 search 值。如果 searchreplace 都是数组,PHP 会从头到尾处理它们的元素。

返回值

它返回一个字符串或一个数组,依赖于传递替换值的主题。

示例代码

<?php
    $subjectVal = "It was nice sunny day.";
    $resStr = str_replace(' ', '-', $subjectVal);
    print_r($resStr);
?>

输出:

It-was-nice-sunny-day.

在 PHP 中使用 str_ireplace() 函数用破折号替换空格

它返回一个字符串或一个数组,其中 subject(忽略大小写)中所有出现的 search 被替换为给定的 replace 值。这是一个不区分大小写的 str_replace() 模型。

str_ireplace() 的语法

str_ireplace(
    array|string $search,
    array|string $replace,
    string|array $subject,
    int &$count = null
): string|array

示例代码

<?php
    $subjectVal = "It was nice sunny day.";
    $resStr2 = str_ireplace(' ', '-', $subjectVal);
    print_r($resStr2);
?>

输出:

It-was-nice-rainy-day.

使用 PHP 中的 preg_replace() 函数用破折号替换空格

preg_replace() 函数是一个 PHP 内置函数,用于执行 searchreplace 内容的正则表达式。

preg_replace() 的语法

preg_replace(
    string|array $pattern,
    string|array $replacement,
    string|array $subject,
    int $limit = -1,
    int &$count = null
): string|array|null

参数

  • $pattern:这个参数通常是字符串和字符串数组。它包含用于搜索内容的字符串元素。
  • $replacement:它是一个强制性参数,用于指定要替换的字符串或带有字符串的数组。如果此参数是一个字符串并且模式参数是一个数组,则所有模式都将被该字符串替换。如果模式和替换参数都是数组,则每个模式都将被替换对应项替换。如果替换数组中的元素少于模式数组中的元素,则任何额外的模式都将被空字符串替换。
  • $subject:这个参数通常是应该执行搜索和替换的字符串和字符串数组。如果作为数组处理,则对主题的每个元素进行查找和替换;此外,返回值是一个数组。
  • $limit:此参数指定每个主题字符串中每个模式的最大可行替换;默认值为 -1(无限制)。
  • $count:一个非强制性参数,它将是要完成的替换次数。

返回值

preg_replace() 根据传递的主题参数返回一个数组或字符串。如果找到匹配项,则返回新主题;否则,如果发生错误,主题将保持不变或返回空值。

示例代码:

<?php
$str = "Welcome to  PHP";
$str = preg_replace('/\s+/', '-', $str);
echo $str;
?>

输出:

Welcome-to--PHP
Shraddha Paghdar avatar Shraddha Paghdar avatar

Shraddha is a JavaScript nerd that utilises it for everything from experimenting to assisting individuals and businesses with day-to-day operations and business growth. She is a writer, chef, and computer programmer. As a senior MEAN/MERN stack developer and project manager with more than 4 years of experience in this sector, she now handles multiple projects. She has been producing technical writing for at least a year and a half. She enjoys coming up with fresh, innovative ideas.

LinkedIn

相关文章 - PHP String