如何在PHP数组中移除日期值里的反斜杠特殊字符?
嘿,这事儿好办!我给你两种常见场景的解决方法,不管你是先处理字符串再转数组,还是直接操作数组元素都能搞定:
场景1:先处理逗号分隔的字符串(再转数组)
如果你的原始数据是单个包含所有内容的字符串(就像你给出的数组元素那样),直接用str_replace把转义的反斜杠去掉就行:
// 原始字符串(注意这里的反斜杠是转义字符,实际存储里是\/) $originalString = "94857784,maston,traficsoon,5583948,1.0,0.03,ergonomic,18\\/1\\/2018 8:21:10 AM,8\\/2\\/2018 11:09:02 AM"; // 替换所有\/为/,或者直接去掉所有反斜杠 $cleanString = str_replace('\\/', '/', $originalString); // 或者:$cleanString = str_replace('\\', '', $originalString); // 之后你可以转成数组 $cleanArray = explode(',', $cleanString); print_r($cleanArray);
场景2:直接操作数组中的每个元素
如果你的数组已经是拆分好的(每个项单独作为数组元素),可以用array_map遍历处理每个元素:
$originalArray = [ "94857784", "maston", "traficsoon", "5583948", "1.0", "0.03", "ergonomic", "18\\/1\\/2018 8:21:10 AM", "8\\/2\\/2018 11:09:02 AM" ]; // 用array_map批量处理每个元素 $cleanArray = array_map(function($item) { return str_replace('\\/', '/', $item); }, $originalArray); print_r($cleanArray);
小补充
这里的str_replace是PHP里最简单直接的文本替换函数,它会把所有匹配到的目标字符串替换成你指定的内容。你看到的\其实是用来转义/的转义字符,所以实际字符串里是\/组合,替换成/就刚好得到你想要的日期格式啦。
内容的提问来源于stack exchange,提问作者Carmen B.
相关产品推荐
相关产品推荐

