PHP如何在数组中添加反斜杠

3

我有一个问题,我想要在我的数组中每个字符串的开头和结尾添加斜杠。

这是我的实际数组示例:

$patte = array();
$patte[0] = "httpd";
$patte[1] = "vsftpd";
$patte[2] = 'gohphp';
$patte[3] = 'abcdef';

我使用这个数组将信息存入数据库,所以现在不能添加斜杠,否则它将无法正常工作。
(mysql_query ... while mysql_fetch_array ...)
我需要重命名这些条目。 为此,我使用第二个数组,并使用命令:“preg_replace”可以按照自己的意愿翻译每个字符串。 但是preg_replace要求我在$patte中添加斜杠。
我希望得到这样一个数组。
$pattes = array();
$pattes[0] = "/httpd/";
$pattes[1] = "/vsftpd/";
$pattes[2] = '/gohphp/';
$pattes[3] = '/abcdef/';

你能帮我吗?我将把大约1000行内容存入这个数组中。


1
考虑使用 array_map - Florent
从SQL中获取数组还是仅从PHP生成? - Nikhil Kudtarkar
仅限于使用 PHP 生成,我没有创建 SQL 表的权限 :/ - user3114471
值得一提的是,如果输入数据不可信,则应该使用 preg_quote 函数。http://www.php.net//manual/en/function.preg-quote.php - s3v3n
2个回答

8
使用array_map()函数,你可以将回调函数应用到数组的每个元素上:
function addSlashes($str)
{
    return "/".$str."/";
}
$newArray = array_map("addSlashes", $patte);//array with the new values

5

使用array_map函数:

$pattes = array_map(function($str) {
  return '/'.$str.'/';
}, $pattes);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接