2010-11-11 114 views
1

可以这样做吗?PHP作为数组访问字符串变量并更改值

for($i=0;$i<strlen($str);$i++) 
{ 
    if(!in_array($str[$i],$arAllowedCharset)){$str[$i]='';} 
} 
return $str; 

它的工作原理,但我不确定我是否“允许”要做到这一点,即$str[$i]='';
注:$str是一个字符串变量,$arAllowedCharset是一个只包含字母数字字符和短划线的数组。

我使用它来格式化自定义CMS中的用户提交的URL。

谢谢。

回答

5

使用正则表达式检查和更正网址会更容易。例如

$str = preg_replace('#[^a-z0-9-]#i', '', $str); 
+0

嘿,谢谢。我不确定是否值得为此启动RegExp引擎。 – Francisc 2010-11-11 10:21:24