使用implode函数分隔字符串值时,数组输出值为空,逗号输出显示在exta逗号中?怎么解决?

时间:2016-03-21 06:24:22

标签: arrays drupal-7

$drstring1 = stristr($drstring, 'DR', false);
//drupal_set_message($drstring1);
$drbrkstring = $drstring1;
$drval = explode('DR', $drbrkstring);
array_shift($drval);
$drdata_array = array();
foreach ($drval as $drv) {
$drdata = process_drstring('DR' . $drv);
$Colarray = array();
foreach ($drdata as $key => $value) {
  array_push($Colarray, $key);
  print 'key='. $key .' <br />';
}
$ColNames = implode(',' ,$Colarray);
 print 'colunames=' .$ColNames.' <br />';



 function process_drstring($string) {
  $result = array();
  $tag_text = array(
  'DR' => 'segmenttag',
  '01' => 'dateofentry',
  '02' => 'dispute_remarks1',
  '03' => 'dispute_remarks2',
  '04' => 'dispute_remarks3',
  '05' => 'dispute_remarks4',
  '06' => 'dispute_remarks5',
  '07' => 'dispute_remarks6',
  );
$tag = substr($string, 0, 2);
$length = substr($string, 2, 2);
$data = substr($string, 4, $length);
$result[$tag_text[$tag]] = $data;
$newstring = substr($string, $length + 4, strlen($string));
if ($newstring) {
$newresult = process_drstring($newstring);
$result = array_merge($result, $newresult);
return $result;
}
else {
return $result;
}
}
 output:
  key=segmenttag 
  key= 
  key=dateofentry 
  key=dispute_remarks2 
  key=dispute_remarks1 
  key=dispute_remarks3 
  key=dispute_remarks4 
  key=dispute_remarks5 
  key=dispute_remarks6 

colunames = segmenttag ,, dateofentry,dispute_remarks2,dispute_remarks1,dispute_remarks3,dispute_remarks4,dispute_remarks5,dispute_remarks6

从这个功能,我需要获得一个列名,但我收到一个额外的键=&#39;&#39;关键元素。

获得额外的关键值。键=&#39;&#39;它不应该出现。请帮我解决这个问题。

0 个答案:

没有答案