Str替换和添加空间?

时间:2010-07-08 23:03:17

标签: php

我使用一个解决方案来解决一个问题,然后当我去解决另一个问题时,它又使另一个问题发生了。

我正在使用它来用破折号替换空格。

$var2 = str_replace(' ', '-', $var2);

现在说$var2是一个地址,所以5019 Hill Street。我设置为将数字%20添加到数字中,以便将其标记为5 0 1 9。当我把str_replace添加到破折号时,它搞砸了。

有没有办法在字符串替换中放入两个函数?我正在使用它来添加数字之间的空格。

if(is_numeric($var2)){
 $var2 = addSpaceToStr($var2);
}

function addSpaceToStr($str){
 $strLen = strlen($str);
 $strWithSpace = '';
 for($i = 0; $i <$strLen; $i++){
  $strWithSpace .= $str[$i];
  if(($i+1) != $strLen){
   $strWithSpace .= '%20';
  }
 }
 return $strWithSpace;
}

这些是两个不同的文件,因此我尝试了将它们放在一个文件中的不同变体,但没有成功。以及将它们保存在单独的文件中也没有成功。第一个文件在添加了破折号的情况下卷曲变量,然后第二个文件假设为数字添加空格,但现在它没有为数字添加空格。有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:0)

我通过添加这个来解决这个问题,
$var2 = preg_replace("/(\d)/", '$1 ', $var2);
$var2 = str_replace(' ', '-', $var2);