注意:preg_替换php中的数组到字符串转换
我有以下find(来自mongodb)字段工作正常,但是当我尝试使用preg_replace时,我得到以下错误消息 注意:数组到字符串的转换在 我的代码:注意:preg_替换php中的数组到字符串转换,php,regex,preg-replace,Php,Regex,Preg Replace,我有以下find(来自mongodb)字段工作正常,但是当我尝试使用preg_replace时,我得到以下错误消息 注意:数组到字符串的转换在 我的代码: $mongorow = $collection->findOne(array('_id' => new MongoId($id))); //finds based on ID $dotodot = preg_replace("/_DOT_/", ".", $mongorow); 问题在于,$mongorow是一个数组,您将其
$mongorow = $collection->findOne(array('_id' => new MongoId($id))); //finds based on ID
$dotodot = preg_replace("/_DOT_/", ".", $mongorow);
问题在于,$mongorow是一个数组,您将其视为字符串或变量 应该是:
$dotodot = preg_replace("/_DOT_/", ".", $mongorow['_id']);
findOne()
$str=$mongorow['whateveryouwerookingfor'];
$dotodot=preg_replace(“/”、“,$str”);
编辑:如果需要在整个数组中进行替换,请查看array\u map()
函数。$mongorow
是一个数组。函数pref_replace不接受数组作为第二个参数。您需要检查数组的值,并检查需要使用哪个值。选择所谓的数组值,如$mongorow['value']
若您还并没有了解数组,请毫不犹豫地阅读本页 请告诉我如何将其视为一个数组,我只需要替换数组中存在的所有值。抱歉,我对此有点陌生:)如果我这么做:$dotodot=preg\u replace(“/\u DOT\u/”,“,$mongorow[“\u id]”);没有错误消息,但我认为它正在搜索id字段。我计划进行这些更改的字段是:$dotodot=preg_replace(“/\u DOT_/”,“,$mongorow['properties');我认为问题在于字段模式存在于一个散列字段中。如何将其转换为字符串?请尝试:$dotodot=preg\u replace(“/”DOT\u/”,“”),内爆(“”,$mongorow))代码>按$str=$mongorow['whateveryouwerookingfor'];?“Whateveryouwereokingfor”是指我希望在其中进行替换的字段吗?preg_replace中的第一个和第二个参数可以是字符串或数组。