繁体   English   中英

单元格内部的PHP换行符删除qoute

[英]PHP line break inside of cell remove qoute

这是我的PHP

$val = "";
foreach($data as $v){
  $val .= '"' . $v . "\n" . '"';
}

结果是

//this is inside of cell
sample
"sample
"sample

这是正确的,但是我无法弄清楚如何删除"sample中的双引号。只有第一个值没有双引号,其余的将有双引号。

编辑

这是我的代码的结果

在此处输入图片说明

这就是我要的

在此处输入图片说明

只需删除部分代码,您将获得解决方案:

$val = "";
foreach($data as $v){
  $val .= $v . "\n";
}

只需尝试(在excel中维护换行符):

    $val = "";
   foreach($data as $v){
          $val .= $v . "<br style='mso-data-placement:same-cell;' />";
        }

这样的事情应该可以解决

$i = 0
foreach($data as $v){
  $val .= '"' . $v . "\n" . (count($data) !== $i) ? '"' : '';
  $i++;
}

我认为您可以像这样使用php函数trim

$val = "";
foreach($data as $v){
  if( ''==$val) {
      $val .= trim('"' . $v . "\n" . '"','"');
  }else{
      $val .= '"' . $v . "\n" . '"','"';
  }
}
 $val .= '"' . $v . "</br>" . '"';
$val=str_replace('"','',$val);

我认为这就是您在循环中寻找的东西。 它将删除所有双引号。

好吧,你去:

$data = ['sample','sample','sample'];
$val = "";
foreach($data as $v){
  $val .= $v . "\n" ;
}

然后,您可以像这样简单地使用fputcsv()

$fp = fopen('file.csv', 'w');
fputcsv($fp, [$val]);

然后您得到想要的结果:

在此处输入图片说明

我的问题的答案是

$val = "";
foreach($data as $v){
  $val .= $v . "\n";
}

 $val = '"'. $val .'"';

我需要在循环外部添加'"'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM