gpt4 book ai didi

php - 从数组中的字符串中删除“

转载 作者:行者123 更新时间:2023-11-30 22:09:02 25 4
gpt4 key购买 nike

我有一个 HTML 表单,我需要将其存储在数据库中,然后将其写入 .csv 和 .txt 。一切正常,除了 txt 输出给我一些错误的字符串。

fputcsv函数:

private function fputcsv_custom1($fp, $array, $eol)
{
fputcsv($fp, $array, ';');
if ("\r\n" != $eol && fseek($fp, -1, SEEK_CUR) === 0)
{ fwrite($fp, $eol . "\r\n"); }
}

Controller :

$peoples = OnlineSz::all()->toArray();

$file = fopen("online_hotel.csv", "w+");
$file1 = fopen("online_hotel.txt", "w+");

array_keys($peoples);

foreach ($peoples as $key => $array) {
$this->fputcsv_custom($file, $array, ';');
$this->fputcsv_custom1($file1, $array, ';');
}
fclose($file);
fclose($file1);

它生成了 2 个文件,由 ; 分隔最后一个值给新行一个\r\n 。

下一个是txt输出:

53;"New test";Worker;test;test;4000;test;test;06123456789;test;0;0;CC;;0;0;

如果字符串包含空格,它存储在 ""中,我该如何删除这个引号?或者我如何才能仅替换数组中这一列的引号?

感谢您的帮助!

编辑

如果我替换两个单词之间的空格,引号不存在,但是如果我需要字符串之间的空格我该怎么办?

Controller :

$this->fputcsv_custom($file4, str_ireplace(chr(32), '/',$user), ';');
$this->fputcsv_custom1($file5, str_ireplace(chr(32), '/',$user), ';');

输出:

53;New/test;Alkalmazott;test;test;4000;test;test;06123456789;0;0;CC;0;0;

但我错了,因为/,如果我将它替换为 chr(32),引号将在那里。

有什么解决办法吗?

最佳答案

使用 str_ireplace 删除引号....

$var  = str_ireplace('"', '', $var); //strip quotes from $var



$this->fputcsv_custom($file, str_ireplace('"', '',$array), ';');
$this->fputcsv_custom1($file1, str_ireplace('"', '',$array), ';');

您可能还想去除尾随空格....

 $this->fputcsv_custom($file, trim(str_ireplace('"', '',$array)), ';');
$this->fputcsv_custom1($file1, trim(str_ireplace('"', '',$array)), ';');

关于php - 从数组中的字符串中删除“,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40723735/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com