2020-10-03 17:23:32 +08:00
|
|
|
<?php
|
2020-10-16 17:45:04 +08:00
|
|
|
/*
|
|
|
|
|
* @Descripttion:
|
|
|
|
|
* @version:
|
|
|
|
|
* @Author: kangkang
|
|
|
|
|
* @Date: 2020-09-30 17:32:46
|
2020-12-07 17:35:27 +08:00
|
|
|
* @LastEditors: Please set LastEditors
|
|
|
|
|
* @LastEditTime: 2020-12-07 16:44:09
|
2020-10-16 17:45:04 +08:00
|
|
|
*/
|
2020-10-03 17:23:32 +08:00
|
|
|
/**
|
|
|
|
|
* 浏览器友好的变量输出
|
|
|
|
|
* @param mixed $var 变量
|
|
|
|
|
* @param boolean $echo 是否输出 默认为True 如果为false 则返回输出字符串
|
|
|
|
|
* @param string $label 标签 默认为空
|
|
|
|
|
* @param boolean $strict 是否严谨 默认为true
|
|
|
|
|
* @return void|string
|
|
|
|
|
*/
|
2020-10-16 17:45:04 +08:00
|
|
|
function dd($var, $echo = true, $label = null, $strict = true)
|
|
|
|
|
{
|
|
|
|
|
echo (echoBase($var, $echo = true, $label = null, $strict = true));
|
2020-10-03 17:23:32 +08:00
|
|
|
exit;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 浏览器友好的变量输出
|
|
|
|
|
* @param mixed $var 变量
|
|
|
|
|
* @param boolean $echo 是否输出 默认为True 如果为false 则返回输出字符串
|
|
|
|
|
* @param string $label 标签 默认为空
|
|
|
|
|
* @param boolean $strict 是否严谨 默认为true
|
|
|
|
|
* @return void|string
|
|
|
|
|
*/
|
2020-10-16 17:45:04 +08:00
|
|
|
function dump($var, $echo = true, $label = null, $strict = true)
|
|
|
|
|
{
|
|
|
|
|
echo (echoBase($var, $echo = true, $label = null, $strict = true));
|
2020-10-03 17:23:32 +08:00
|
|
|
}
|
|
|
|
|
|
2020-10-16 17:45:04 +08:00
|
|
|
function echoBase($var, $echo = true, $label = null, $strict = true)
|
|
|
|
|
{
|
2020-10-03 17:23:32 +08:00
|
|
|
$label = ($label === null) ? '' : rtrim($label) . ' ';
|
|
|
|
|
if (!$strict) {
|
|
|
|
|
if (ini_get('html_errors')) {
|
|
|
|
|
$output = print_r($var, true);
|
|
|
|
|
$output = '<pre>' . $label . htmlspecialchars($output, ENT_QUOTES) . '</pre>';
|
|
|
|
|
} else {
|
|
|
|
|
$output = $label . print_r($var, true);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
ob_start();
|
|
|
|
|
var_dump($var);
|
|
|
|
|
$output = ob_get_clean();
|
|
|
|
|
if (!extension_loaded('xdebug')) {
|
|
|
|
|
$output = preg_replace('/\]\=\>\n(\s+)/m', '] => ', $output);
|
|
|
|
|
$output = '<pre>' . $label . htmlspecialchars($output, ENT_QUOTES) . '</pre>';
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return $output;
|
2020-10-11 19:23:42 +08:00
|
|
|
}
|
|
|
|
|
|
2020-10-16 17:45:04 +08:00
|
|
|
//接口返回函数
|
|
|
|
|
function result($data = [], $msg = '', $code = 10000)
|
|
|
|
|
{
|
|
|
|
|
$info = [
|
|
|
|
|
'Code' => $code,
|
|
|
|
|
'msg' => $msg,
|
|
|
|
|
'data' => $data,
|
|
|
|
|
];
|
|
|
|
|
echo json_encode($info);
|
|
|
|
|
die;
|
|
|
|
|
}
|
2020-12-07 17:35:27 +08:00
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* @description: 导出csv
|
|
|
|
|
* @param {*}
|
|
|
|
|
* @return {*}
|
|
|
|
|
*/
|
|
|
|
|
function exportToCsv($fileName = '', $headArr = [], $data = []){
|
|
|
|
|
ini_set('memory_limit','1024M'); //设置程序运行的内存
|
|
|
|
|
ini_set('max_execution_time',0); //设置程序的执行时间,0为无上限
|
|
|
|
|
@ob_end_clean(); //清除内存
|
|
|
|
|
ob_start();
|
|
|
|
|
|
|
|
|
|
header('Content-Type: text/csv; charset=utf-8');
|
|
|
|
|
header('Content-Disposition: attachment; filename=data.csv');
|
|
|
|
|
header('Expires:0');
|
|
|
|
|
header('Pragma:no-cache');
|
|
|
|
|
$fp=fopen('php://output','w');
|
|
|
|
|
fputcsv($fp,$headArr);
|
|
|
|
|
$index = 0;
|
|
|
|
|
foreach ($data as $item) {
|
|
|
|
|
if($index==1000){ //每次写入1000条数据清除内存
|
|
|
|
|
$index=0;
|
|
|
|
|
ob_flush();//清除内存
|
|
|
|
|
flush();
|
|
|
|
|
}
|
|
|
|
|
$index++;
|
|
|
|
|
fputcsv($fp,$item);
|
|
|
|
|
}
|
|
|
|
|
fclose($fp);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@ob_flush();
|
|
|
|
|
flush();
|
|
|
|
|
ob_end_clean();
|
|
|
|
|
return;
|
|
|
|
|
}
|