43

我目前在我的代码中有这一行:

<div><a href="http://www.envisionforce.com/local/'.$row[website].'-seo-services">'.ucwords($row[website]).'</a></div>

它会显示一个城市名称,如下所示:

Puiol-del-piu

但我需要的是它显示没有破折号,这样 ucwords 将大写每个单词的第一个字母,例如:

Puiol Del Piu

如果代码可以限制在这一行,那就太好了,因为我在页面中还有很多其他内容。

4

4 回答 4

66

这个 str_replace 完成了这项工作:

$string = str_replace("-", " ", $string);

此外,您可以将其作为一个函数。

function replace_dashes($string) {
    $string = str_replace("-", " ", $string);
    return $string;
}

然后你叫它:

$varcity = replace_dashes($row[website]);
<div><a href="http://www.envisionforce.com/local/'.$row[website].'-seo-services">'.ucwords($varcity).'</a></div>
于 2012-11-24T23:16:56.457 回答
57
<?php
echo '<div><a href="http://www.envisionforce.com/local/'.$row[website].'-seo-services">'.ucwords(str_replace("-"," ",$row[website])).'</a></div>';

在上面的示例中,您可以使用str_replace()空格替换连字符来创建单独的单词。然后使用ucwords()将新创建的单词大写。

http://php.net/manual/en/function.str-replace.php

http://php.net/manual/en/function.ucwords.php

于 2012-11-24T23:11:35.583 回答
10

用空格替换破折号

str_replace("-"," ",$row[text])

用破折号替换空格

str_replace(" ","-",$row[text])
于 2018-05-24T10:17:57.593 回答
5

str_replace('找到你要替换的', '替换为', '你的数组或字符串变量');

如果你想用空格替换破折号,你可以使用这个:

str_replace("-"," ",$row[text])

如果你想用破折号替换空格,使用这个:

str_replace(" ","-",$row[text])

使用 ucwords() 将单词大写。

于 2019-12-29T10:39:30.377 回答