2015-09-09 44 views
6

我有以下字符串如何添加撇号在PHP自身

$data = "20150825131738_262,20150825132227_241,20150825132254_898,20150825132320_209"; 

如何$data添加'。因此产生的输出如下

'20150825131738_262','20150825132227_241','20150825132254_898','20150825132320_209,20150825132346_124','20150825132406_744','20150825143522_447','20150828145011_928' 

帮助我感谢的

+2

为什么不在创建时附上字符串?你从别的地方得到这个字符串还是什么 –

+2

你尝试过什么吗? – Rizier123

回答

7

继会给你想要的结果

$data = "20150825131738_262,20150825132227_241,20150825132254_898,20150825132320_209"; 
$data_array = explode(',', $data); 
$data = "'". implode("','", $data_array) . "'"; 
print_r($data); 

看到它从其他的答案网上运行here

+0

Thank's Mubashar –

5

尝试这个

$arr=explode(',', $data); 

implode("','",$arr); 
+0

这会产生'20150825131738_262' , '20150825132227_241', '20150825132254_898', '20150825132320_209' –

+0

是的,这产生 20150825131738_262', '20150825132227_241', '20150825132254_898', '20150825132320_2 09 如何添加' 的前部和后部 –

1

如果你正在从数据库或该值一些其他来源,那么你可以简单地使用其中的一个使用简单的方法implodeexplode功能为

$data = "20150825131738_262,20150825132227_241,20150825132254_898,20150825132320_209"; 
echo "'".implode("','",explode(',',$data))."'"; 

或使用preg_replace_callback作为

$data = "20150825131738_262,20150825132227_241,20150825132254_898,20150825132320_209"; 
echo preg_replace_callback('/[\d_]+/',function($match){ return "'$match[0]'";},$data); 
+0

我的回答有什么问题,我认为我早于穆巴沙尔艾哈迈德发布了这个答案 –

1
$data = "20150825131738_262,20150825132227_241,20150825132254_898,20150825132320_209"; 
$pad_data = "'" . $data . "'"; 
$data = str_replace (",", "', '", $pad_data); 
echo $data; 
0

稍微不同的方法:

$data = '20150825131738_262,20150825132227_241,20150825132254_898,20150825132320_209'; 

# Split data into individual fields 
$array = explode(',', $data); 

# Surround each field with single quotes 
$array = array_map(
    function ($field) { return "'${field}'"; }, 
    $array 
); 

# Join fields back into a single string again 
$data = implode(',', $array); 

echo $data; 

该代码可以看到运行here