Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/236.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Str替换和添加空间?_Php - Fatal编程技术网

Php Str替换和添加空间?

Php Str替换和添加空间?,php,Php,我用一个解决方案来解决一个问题,然后当我去解决另一个问题时,它又使另一个问题再次出现 我目前正在使用它将空格替换为破折号 $var2 = str_replace(' ', '-', $var2); 现在说,$var2是一个地址,所以山街5019号。我把它设置为在数字上加一个%20,这样它就可以说它是50 1 9。当我用str\u replace添加破折号时,它把事情搞砸了 是否有一种方法可以在字符串替换中同时使用这两个函数?我用这个来增加数字之间的空格 if(is_numeric($var2)

我用一个解决方案来解决一个问题,然后当我去解决另一个问题时,它又使另一个问题再次出现

我目前正在使用它将空格替换为破折号

$var2 = str_replace(' ', '-', $var2);
现在说,
$var2
是一个地址,所以山街5019号。我把它设置为在数字上加一个%20,这样它就可以说它是
50 1 9
。当我用
str\u 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;
}
if(是数值($var2)){
$var2=addSpaceToStr($var2);
}
函数addSpaceToStr($str){
$strLen=strLen($str);
$strWithSpace='';

对于($i=0;$i我通过添加此项来修复此问题,
$var2=preg_replace(“/(\d)/”,“$1',$var2);


$var2=str_replace(“,-”,$var2);

您可以添加您的输入和预期的输出吗?目前还不太明显。目前正在提交,它将提交5019希尔街。str_replace将其更改为5019希尔街,并将其卷曲为api.php,然后假定添加“%20”只显示数字。因此api.php会卷缩到它所访问的最后一页,应该是5%200%201%209希尔街。现在它没有添加“%20”对于数字,因此当api.php卷曲到最后一页时,它会发送5019 Hill Streett。它看起来像您的
addSpaceToStr
函数的一部分被切断了,您可以粘贴完整的内容吗?也可以检查一下,使您的代码部分显示为单间隔。解决了这个问题,谢谢!然后回答您的问题并标记它-谢谢