首页
关于小站
朋友
壁纸
留言
时光之书
笔顺字帖
LayUI手册
Search
1
【PHP】PHPoffice/PHPSpreadsheet读取和写入Excel
2,044 阅读
2
【Layui】控制页面元素展示隐藏
1,846 阅读
3
【Git】No tracked branch configured for branch master or the branch doesn't exist.
1,791 阅读
4
【PHP】PHP实现JWT生成和验证
1,733 阅读
5
【composer】composer常用命令
1,584 阅读
默认分类
PHP
ThinkPHP
Laravel
面向对象
设计模式
算法
基础
网络安全
webman
Web
HTML
CSS
JavaScript
jQuery
Layui
VUE
uni-app
Database
MySQL
Redis
RabbitMQ
Nginx
Git
Linux
Soft Ware
Windows
网赚
Go
Docker
Elasticsearch
登录
Search
标签搜索
PHP
函数
方法
类
MySQL
ThinkPHP
JavaScript
OOP
Layui
Web
Server
Docker
PHPSpreadsheet
PHPoffice
Array
设计模式
Nginx
Git
排序算法
基础
小破孩
累计撰写
258
篇文章
累计收到
13
条评论
首页
栏目
默认分类
PHP
ThinkPHP
Laravel
面向对象
设计模式
算法
基础
网络安全
webman
Web
HTML
CSS
JavaScript
jQuery
Layui
VUE
uni-app
Database
MySQL
Redis
RabbitMQ
Nginx
Git
Linux
Soft Ware
Windows
网赚
Go
Docker
Elasticsearch
页面
关于小站
朋友
壁纸
留言
时光之书
笔顺字帖
LayUI手册
搜索到
2
篇与
的结果
2025-12-16
【PHP】一个流行的 PHP 日期时间处理库 nesbot/carbon
官方文档:https://carbon.nesbot.com/docs/安装方法1. 基本安装# 在项目根目录执行 composer require nesbot/carbon2. 指定版本安装# 安装特定版本 composer require nesbot/carbon:^2.0 # 安装开发版本 composer require nesbot/carbon --dev基本使用方法1. 引入 Carbonuse Carbon\Carbon; // 获取当前时间 $now = Carbon::now(); echo $now; // 2023-10-27 14:30:00 // 创建指定时间 $date = Carbon::create(2023, 12, 25, 10, 30, 0);2. 常用方法示例use Carbon\Carbon; // 格式化输出 echo Carbon::now()->format('Y-m-d H:i:s'); echo Carbon::now()->toDateString(); // 2023-10-27 echo Carbon::now()->toDateTimeString(); // 2023-10-27 14:30:00 // 日期操作 $tomorrow = Carbon::now()->addDay(); $yesterday = Carbon::now()->subDay(); $nextWeek = Carbon::now()->addWeek(); // 日期比较 $date1 = Carbon::create(2023, 10, 27); $date2 = Carbon::create(2023, 10, 28); if ($date1->lt($date2)) { // less than echo "date1 在 date2 之前"; } // 时区设置 $date = Carbon::now('Asia/Shanghai'); $date->setTimezone('America/New_York');3. 本地化(中文支持)# 安装语言包 composer require carbonphp/carbon-doctrine-typesuse Carbon\Carbon; // 设置中文 Carbon::setLocale('zh'); echo Carbon::now()->diffForHumans(); // 刚刚 echo Carbon::now()->subMinutes(5)->diffForHumans(); // 5分钟前配置文件(可选)在 Laravel 项目中,可以在 config/app.php 中配置时区:'timezone' => 'Asia/Shanghai', 'locale' => 'zh-CN',验证安装创建测试文件验证安装:<?php require 'vendor/autoload.php'; use Carbon\Carbon; echo "当前时间:" . Carbon::now() . "\n"; echo "明天:" . Carbon::now()->addDay() . "\n"; echo "一周前:" . Carbon::now()->subWeek()->diffForHumans() . "\n";常见问题解决版本兼容性问题# 查看当前PHP版本支持的Carbon版本 php -v # 如果PHP版本较旧,使用Carbon 1.x composer require nesbot/carbon:^1.39内存问题# 清理composer缓存 composer clear-cache代理设置# 如果下载慢,使用国内镜像 composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/在框架中的使用LaravelCarbon 已集成在 Laravel 中,可直接使用:// 在Laravel中直接使用 $date = now(); // Carbon实例 echo $date->format('Y-m-d');其他框架// Slim, Symfony等框架 require __DIR__ . '/vendor/autoload.php'; use Carbon\Carbon; $carbon = new Carbon();这样就成功安装并可以使用 Carbon 来处理日期时间了。
2025年12月16日
6 阅读
0 评论
0 点赞
2025-05-13
【PHP】PHPExcel 使用手册
PHPExcel 是一个用于操作 Microsoft Excel 格式文件的 PHP 库,它支持读取和写入多种格式(如 .xls, .xlsx, .csv 等)。不过需要注意,PHPExcel 项目已停止维护,推荐使用其继任者 PhpSpreadsheet。以下是 PHPExcel 的基本使用指南:1. 安装 PHPExcel# 使用 Composer 安装(推荐) composer require phpoffice/phpexcel2. 读取 Excel 文件require 'vendor/autoload.php'; use PHPExcel_IOFactory; // 读取文件 $inputFileName = 'example.xlsx'; $objPHPExcel = PHPExcel_IOFactory::load($inputFileName); // 获取第一个工作表 $sheet = $objPHPExcel->getActiveSheet(); // 获取最高行和最高列 $highestRow = $sheet->getHighestRow(); $highestColumn = $sheet->getHighestColumn(); // 遍历数据 for ($row = 1; $row <= $highestRow; $row++) { for ($col = 'A'; $col <= $highestColumn; $col++) { $cellValue = $sheet->getCell($col.$row)->getValue(); echo "Row $row, Column $col: $cellValue\n"; } }3. 创建新的 Excel 文件require 'vendor/autoload.php'; use PHPExcel; use PHPExcel_IOFactory; // 创建新的 PHPExcel 对象 $objPHPExcel = new PHPExcel(); // 设置文档属性 $objPHPExcel->getProperties() ->setCreator("Your Name") ->setTitle("Sample Excel File"); // 获取活动工作表 $sheet = $objPHPExcel->getActiveSheet(); // 设置单元格值 $sheet->setCellValue('A1', 'Hello'); $sheet->setCellValue('B1', 'World!'); $sheet->setCellValue('A2', 'This is a sample spreadsheet.'); // 保存为 .xlsx 文件 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('new_file.xlsx');4. 设置样式// 设置字体样式 $sheet->getStyle('A1')->getFont() ->setName('Arial') ->setSize(14) ->setBold(true) ->setColor(new PHPExcel_Style_Color(PHPExcel_Style_Color::COLOR_RED)); // 设置单元格背景色 $sheet->getStyle('A1')->getFill() ->setFillType(PHPExcel_Style_Fill::FILL_SOLID) ->getStartColor()->setARGB('FFEEEEEE'); // 设置对齐方式 $sheet->getStyle('A1')->getAlignment() ->setHorizontal(PHPExcel_Style_Alignment::HORIZONTAL_CENTER) ->setVertical(PHPExcel_Style_Alignment::VERTICAL_CENTER); // 设置列宽 $sheet->getColumnDimension('A')->setWidth(20);5. 合并单元格// 合并 A1 到 B1 的单元格 $sheet->mergeCells('A1:B1'); // 取消合并 $sheet->unmergeCells('A1:B1');6. 处理日期格式// 设置日期值(PHPExcel 使用 Excel 时间戳格式) $dateTime = new DateTime(); $sheet->setCellValue('A1', $dateTime->format('Y-m-d H:i:s')); // 设置单元格格式为日期 $sheet->getStyle('A1')->getNumberFormat() ->setFormatCode('yyyy-mm-dd hh:mm:ss');7. 保存为不同格式// 保存为 .xlsx 格式 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('file.xlsx'); // 保存为 .xls 格式 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel5'); $objWriter->save('file.xls'); // 保存为 CSV 格式 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'CSV'); $objWriter->save('file.csv');8. 从浏览器下载文件// 设置响应头 header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet'); header('Content-Disposition: attachment;filename="download.xlsx"'); header('Cache-Control: max-age=0'); // 输出到浏览器 $objWriter = PHPExcel_IOFactory::createWriter($objPHPExcel, 'Excel2007'); $objWriter->save('php://output'); exit;注意事项性能问题:处理大量数据时,PHPExcel 可能占用较多内存。考虑使用 PHPExcel_CachedObjectStorageFactory 进行优化。替代方案:推荐使用 PhpSpreadsheet,它是 PHPExcel 的官方继任者,修复了许多问题并提供更好的性能。内存优化:// 设置为只读模式以减少内存消耗 $objReader = PHPExcel_IOFactory::createReader('Excel2007'); $objReader->setReadDataOnly(true); $objPHPExcel = $objReader->load('large_file.xlsx');如需更详细的文档,请参考 PHPExcel 官方文档(注意:项目已停止维护)。
2025年05月13日
73 阅读
0 评论
0 点赞