dee*_*eem 3 php mysql csv wordpress
我正在编写一个脚本,从csv文件中的mysql导出数据.它的工作完美.
当我从管理面板输入带有撇号的歌曲的标题时,就像test'123'
数据保存在数据库中一样test\'123\'
.
现在,当我将数据导出到csv文件时,标题保存为反斜杠'\',如下所示:
现在我希望当我将数据从数据库导出到csv文件时,反斜杠只会从csv文件中删除,而不是从数据库中删除.
这是我的exprot数据代码:
$query = "SELECT plist.playlist_id, plist.playlist_name, plist.playlist_shortcode, psong.song_id, psong.list_order,
psong.song_playlist, psong.mp3, psong.ogg, psong.title, psong.buy, psong.buyy, psong.buyyy, psong.price, psong.cover,
psong.artist
FROM " . $pre . "hmp_songs As psong
LEFT JOIN " . $pre . "hmp_playlists As plist
On plist.playlist_name = psong.song_playlist
Where plist.playlist_id IS NOT NULL
And plist.playlist_name IS NOT NULL
And plist.playlist_shortcode IS NOT NULL
And psong.song_id IS NOT NULL
And psong.list_order IS NOT NULL
And psong.song_playlist IS NOT NULL
And psong.mp3 IS NOT NULL
And psong.ogg IS NOT NULL
And psong.title IS NOT NULL
And psong.buy IS NOT NULL
And psong.buyy IS NOT NULL
And psong.buyyy IS NOT NULL
And psong.price IS NOT NULL
And psong.cover IS NOT NULL
And psong.artist IS NOT NULL";
$result = mysqli_query($link,$query) or die("Error executing query: ".mysqli_error());
$row = mysqli_fetch_assoc($result);
$line = "";
$comma = "";
foreach($row as $name => $value) {
$line .= $comma . '"' . str_replace('"', '""', $name) . '"';
$comma = ",";
}
$line .= "\n";
$out = $line;
mysqli_data_seek($result, 0);
while($row = mysqli_fetch_assoc($result)){
$line = "";
$comma = "";
foreach($row as $value) {
$line .= $comma . '"' . str_replace('"', '""', $value) . '"';
$comma = ",";
}
$line .= "\n";
$out .= $line;
}
$csv_file_name = 'HMP_'.date('Ymd_His').'.csv'; # CSV FILE NAME WILL BE table_name_yyyymmdd_hhmmss.csv
header("Content-type: text/csv");
header("Content-Disposition: attachment; filename=".$csv_file_name);
header("Content-Description:File Transfer");
header('Content-Transfer-Encoding: binary');
header('Cache-Control: must-revalidate, post-check=0, pre-check=0');
header('Pragma: public');
header('Content-Type: application/octet-stream');
echo __($out,"hmp");
exit;
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做因为我不知道.谢谢
PHP函数stripslashes
将适合您.
例:
<?php
$str = "Is your name O\'reilly?";
echo stripslashes($str);
?>
Run Code Online (Sandbox Code Playgroud)
产量
你叫O'reilly吗?
用法代码:
foreach($row as $value) {
$line .= $comma . '"' . str_replace('"', '""', stripslashes($value)) . '"';
$comma = ",";
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
585 次 |
最近记录: |