用php替换带下划线的空格[关闭]

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用php替换带下划线的空格[关闭]相关的知识,希望对你有一定的参考价值。

这是一个非常新手的问题,但我无法弄清楚问题出在哪里,所以请耐心等待...

这就是我想要实现的目标 - > $new = 'OMG_This_Is_A_One_Stupid_Error';

这是我从这段代码得到的 - > $new = 'OMG This Is A One Stupid_Error';

<?php 
    $find = 'OMG This Is A One Stupid Error'; //just an example
    $offset = 0;
    $search = ' ';
    $length = strlen($search);
    $replace = '_';
    while($substring = strpos($find, $search,$offset))
    {
        $new =  substr_replace($find, $replace,$substring,$length);
        $offset = $substring + $search_length;
    }   
    echo $new;
?> 
答案

使用str_replace()函数:

<?php
    $old = 'OMG_This_Is_A_One_Stupid_Error';
    $new = str_replace(' ', '_', $old);
    echo $old; // will output OMG This Is A One Stupid error
?>

反转参数以获得反向效果

<?php
    $old = 'OMG This Is A One Stupid_Error';
    $new = str_replace('_', ' ', $old);
    echo $old; // will output OMG_This_Is_A_One_Stupid error
?>
另一答案

请允许我向您介绍str_replace()

$var = str_replace(' ', '_', $var);
另一答案

你可以使用str_replace

如果您只是希望源字符串将下划线替换为空格,请使用以下命令:

$source = 'OMG This Is A One Stupid Error'; //just an example

// $new is: OMG_This_Is_A_One_Stupid_Error
$new = str_replace(' ', '_', $source);

如果源字符串是较大字符串的子字符串,则可以执行以下操作:

$source     = 'This is a question for SO. '
            . 'OMG This Is A One Stupid Error';
$to_replace = 'OMG This Is A One Stupid Error';
$target     = str_replace(' ', '_', $to_replace);

// Finally replace the target string
$new = str_replace($to_replace, $target, $source)

// $new is: This is a question for SO. OMG_This_Is_A_One_Stupid_Error

以上是关于用php替换带下划线的空格[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

用下划线替换 URL 中的空格

php正则表达怎么把一个字符串中的所有空格都转化为下划线

PHP 如何用下划线替换文件名中的空格

仅用一个“_”替换空格

用字符串中的任何字符查找任何数字和空格的匹配模式并替换为 |在 PHP [关闭]

php 过滤以停止WordPress用短划线替换空格。