Php strstr无法正常工作

时间:2014-01-28 20:56:14

标签: php substring strstr


我试图摆脱 - 在50-000的字符串和输出50000但不能使用strstr。这是我试过的代码

$addr = "50-000";
echo $addr = strtr($addr, "-", "");

这里有任何线索出错。

感谢。

3 个答案:

答案 0 :(得分:3)

只需使用str_replace()

即可
echo str_replace('-', '', "50-000");

答案 1 :(得分:3)

试试这个

echo str_replace("-","","50-000");

答案 2 :(得分:0)

根据manual

string strtr ( string $str , string $from , string $to )
     

如果给出三个参数,...如果来自和有不同的长度,那么中的额外字符   两个中较长的一个被忽略。 str的长度将与   返回值。

由于"-"长于"",因此会忽略该字符 由于这个三参数调用将返回相同的字符串长度,因此它可能无法帮助您将字符串从“50-000”缩短为“50000”。

相反,您可以尝试双参数调用,其中返回的字符串长度可能不同:

string strtr ( string $str , array $replace_pairs )

E.g。

$addr = "50-000";
echo $addr = strtr($addr, array("-"=>""));
// returns "50000"

如果您有兴趣了解有关strtr()str_replace()的更多信息:
PHP strtr vs str_replace benchmarking
When to use strtr vs str_replace?