首先上干货 解决问题

set_time_limit(0); //设置脚本运行时间为不限制  因为php脚本默认时间为30秒
ini_set('memory_limit', -1); //取消脚本运行内存限制 如果你的数据量大且需要处理
error_reporting(E_ALL); //把报错打开吧 有些数据是不是有错误 echo 'name,phone,age,content';  //设置表格表头
echo "\n";
//这里是关联数组 一般数据库数据格式 替换为自己的数据就好
$data = array(
0=>array('name'=>'张三','phone'=>'18236666666','age'=>'18','content'=>'这是一段文字,带逗号需要处理'),
1=>array('张三','18236666666','18',"这是一段文字,(\r\n)换行需要处理"),
); foreach($data as $v){
$text = iconv('utf-8','gb2312',$val['memo']);  //处理中文乱码
$text =str_replace(array("\r\n", "\r", "\n"), "",$text);  //处理文本中换行符
$text =str_replace(array(","), "",$text);  //处理英文格式下的"," 因为输出是根据,隔开单元格
echo $v['name'].','.$v['phone'].','.$v['age'].','.$text; //输出数据
echo "\n";
}

然后在nginx下找到脚本执行命令

 php csv.php > your.csv

  下面是介绍原理
set_time_limit (秒数) 返回bool值
设置允许脚本运行的时间,单位为秒。如果超过了此设置,脚本返回一个致命的错误。默认值为30秒,或者是在 php.ini 的 max_execution_time 被定义的值。
参数最大的执行时间,单位为秒。如果设置为0(零),没有时间方面的限制。
如果你的数据量很大很大 那么脚本会跑很久 所以执行时间是需要设置一下的

ini_set()  用来设置php.ini的值,在函数执行的时候生效,脚本结束后,设置失效。无需打开php.ini文件,就能修改配置,对于虚拟空间来说,很方便。

脚本中使用了 ini_set('memory_limit', '64M'); 设定一个脚本运行是能够申请到的最大内存字节数,如果一个脚本中需要处理很大的数据那么这个值就需要设置了ini_set('memory_limit', -1);表示不限制内存

函数注意:

干货来了1:

看手册:

可修改范围是PHP_INI_PERDIR,你可能不知道这是什么意思(参考:http://blog.csdn.net/bravezhe/article/details/18351975)

PHP总共有4个配置指令作用域:(PHP中的每个指令都有自己的作用域,指令只能在其作用域中修改,不是任何地方都能修改配置指令的)

PHP_INI_PERDIR:指令可以在php.ini、httpd.conf或.htaccess文件中修改

PHP_INI_SYSTEM:指令可以在php.ini 和 httpd.conf 文件中修改

PHP_INI_USER:指令可以在用户脚本中修改

PHP_INI_ALL:指令可以在任何地方修改

干货来了2:

开启了安全模式:代码一同样是无效的。

自己在php version = '5.3.3'上测试发现ini_set('safe_mode',true);无效

需要在php.ini下修改:

干货来了3:

修改代码二的方法:

在.htaccess文件中直接加上

  1. php_value upload_max_filesize "3M"

摘记链接 细说ini_set(); http://blog.csdn.net/littlebo01/article/details/45199161

输出csv文件

在脚本中直接echo 用英文标点 "," 来划分单元格列; 用 "/n" 来划分单元格行
用nginx下输出命令 ">" 将echo出来的文本输出到1.csv文件

php this.php > 1.csv

  这里提一下 很方便

 iconv('utf-8','gb2312',$val['memo']);//用来解决utf-8文字乱码问题

  

在nginx下导出数据库数据的更多相关文章

  1. DB2导入导出数据库数据

    导出数据库中数据 在db2cmd命令下生成建库脚本(-z指定模式名) db2look -d BBS -z db2admin -u db2admin -e -o bbs.sql 在db2cmd命令下导出 ...

  2. mysql导出数据库数据及表结构

    1,导出远程数据库数据到本地 mysql -A wj_sms -h192.168.1.105 -uroot -p4321 -ss -e "set NAMES 'utf8';SELECT * ...

  3. java导出数据到excel里:直接导出和导出数据库数据

    一.直接导出 package com.ij34.util; import java.io.FileNotFoundException; import java.io.FileOutputStream; ...

  4. Java注解(Annotation)用法:利用注解和反射机制指定列名导出数据库数据

    闲来没事,想了一个应用的例子:用java如何把数据库的数据根据我们指定的某几列,如第2列,第4列,第6列导出来到Excel里? 写代码也是为了应用的,写好的代码更重要的是在于思考.我自己思考了这个示例 ...

  5. 配置ODBC DSN数据源,导出数据库数据到Excel过程记录

    一.前言 工作中我们可能遇到这样的需要:查询数据库中的信息,并将结果导出到Excel文件.这本来没什么,但数据量比较大时,用PLSQL.toad导出Excel会出现内存不足等情况,使用odbc+Mic ...

  6. BCP 导入导出数据库数据

    使用 bcp 将数据库迁移到 Azure SQL Database --所有 都是在本机sql上运行--先开启cmdshellEXEC sp_configure 'show advanced opti ...

  7. java 对excel操作 读取、写入、修改数据;导出数据库数据到excel

    ============前提加入jar包jxl.jar========================= // 从数据库导出数据到excel public List<Xskh> outPu ...

  8. Excel导出数据库数据

    package com.hxkr.util; import java.io.FileOutputStream; import java.util.ArrayList; import java.util ...

  9. 导出数据库数据制成Excel和txt

    引用ICSharpCode.SharpZipLib.dll 1.编写压缩和解压代码 using System; using System.Collections.Generic; using Syst ...

随机推荐

  1. 目标检测中的IOU和CIOU原理讲解以及应用(附测试代码)

    上期讲解了目标检测中的三种数据增强的方法,这期我们讲讲目标检测中用来评估对象检测算法的IOU和CIOU的原理应用以及代码实现. 交并比IOU(Intersection over union) 在目标检 ...

  2. [bash] 打印到屏幕相关语法

    程序: #!/bin/bash function showAlertMsg(){ echo -e "\e[1;31m"$"\e[0m" } function s ...

  3. cannary

    canary是Linux为防止栈溢出的一种保护机制,接着我们分析glibc对canary的实现过程,首先给出跟canary相关的调用栈: security_init()  //在elf/rtld.c中 ...

  4. Ubuntu更换国内源--解决终端下载速度慢的问题

    目前我已知的更改国内源的方法基本上就两种,第一种,把/etc/apt/sources.list文件里的源更换一下,改成阿里云或者其它源.第二种,更换在设置中software&updates(软 ...

  5. xss构造--如何使用xss语句

    XSS的构造 1.利用[<>]构造html/js 如[<script>alert(/xss/)</script>] 2.伪协议 使用javascript:伪协议来构 ...

  6. [剑指Offer]61-扑克牌中的顺子

    题目 "红心A,黑桃3,小王,大王,方片5",大\小 王可以看成任何数字,并且A看作1,J为11,Q为12,K为13.上面的5张牌就可以变成"1,2,3,4,5" ...

  7. js 去掉字符串最后一个逗号:笑死我了

    今天突然遇到js 去掉字符串最后一个逗号的问题,本想偷懒搜个代码吧,没想到看到百度的第一条记录是这么一篇文章. 网易博客: http://blog.163.com/li_crane/blog/stat ...

  8. hadoop和hbase高可用模式部署

    记录apache版本的hadoop和hbase的安装,并启用高可用模式. 1. 主机环境 我这里使用的操作系统是centos 6.5,安装在vmware上,共三台. 主机名 IP 操作系统 用户名 安 ...

  9. MATLAB 编译器的使用

    MATLAB 编译器的使用MATLAB 编译器(相应命令为 mcc)可生成独立应用程序.库.COM 对象.Excel 插件,218 MATLAB 实用教程它根据目标类型生成合适的包装器文件.包装器文件 ...

  10. nginx异步访问mysql

    nginx中有一个模块有这个功能,(以前的文章中扩展,这里叫模块,以后统一叫模块,模块可能准确点,因为扩展是单独的文件,而模块是嵌入到主文件中的),这个模块叫drizzle-nginx-module, ...