首頁 >後端開發 >php教程 >拆分合并Sql语句字符串,该如何处理

拆分合并Sql语句字符串,该如何处理

WBOY
WBOY原創
2016-06-13 10:05:18978瀏覽

拆分合并Sql语句字符串
有一sql字符串,
$sql   =   "INSERT   INTO   tablename   (field1,field2,field3,field4,field5,field6,field7,field8)   VALUES   ( 'b9 ',NULL, 'he,p ',1, 'd-0 ',1,11, '4d ') ";
现已将VALUES部分取出放到以字符串变量,如:$v= " 'b9 ',NULL, 'he,p ',1, 'd-0 ',1,11, '4d ' "
问:怎样将$v拆分为数组,再合并数组后还是原样的呢?(注意单引号和逗号)


------解决方案--------------------
呕,是我没看清你的需求
请确认数据格式

尝试以下分割字符
$v= " 'b9 ',NULL, 'he,p ',1, 'd-0 ',1,11, '4d ' "
$t = preg_split( '/,(?!\w+\ ',?)/i ',$v);
print_r($t);
合并
echo implode( ', ',$t);


------解决方案--------------------
$v= " 'b9 ',NULL, 'h,3,he,p ',1, 'd-0 ',1,11, '4d ' ";
$pattern = "/( '[^ ']* ')|,?([^ ',]+),?/ ";
$res = array();
if (preg_match_all($pattern, $v, $match))
{
foreach($match[1] as $key=> $val)
{
if ($val == ' ')
{
$res[$key] = $match[2][$key];
}
else
$res[$key] = $val;
}
}
echo '

  '; <br> print_r($res); <br> ?><div class="clear">
                 
              
              
        
            </div>
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn