我需要一些关于PHPExcel的帮助,我们有一个脚本可以将我们的Web应用程序的日志(如搜索,关键字等)输入到excel文件中.我希望脚本以这样的方式显示日志,即少数参数为黑色,少数为绿色.这是我需要修改的脚本部分:
$data = parse_command($log_command, $content);
$command = $data['command'];
$params = $data['params'];
if ($command == 'skip')
continue;
$curr_row++;
if ($save_to_excel)
{
$objPHPExcel->getActiveSheet()->getStyle('A'.$curr_row.':C'.$curr_row)->getFont()->setSize(10);
$objPHPExcel->getActiveSheet()->getStyle('A'.$curr_row)->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_DATE_XLSX15);
$objPHPExcel->setActiveSheetIndex(0)
->setCellValue('A'.$curr_row, $request_time)
->setCellValue('B'.$curr_row, $command)
->setCellValue('C'.$curr_row, $params);
}
Run Code Online (Sandbox Code Playgroud)
excel文件包含日志,搜索类型,关键字.所以我想在Black中进行几种类型的搜索,例如黑色的Venue搜索,Blue中的事件搜索,我希望我足够清楚.提前致谢.
我写了一个PHP应用程序,它使用数据库数据生成Excel文件.我正在使用着名的库PHPExcel.与此库一起工作的每个人都知道内存管理是这个库的最差点.
所以,我的问题是,在我写excel然后把它关闭之前,可以增加内存吗?
就像是,
error_reporting(1);
ini_set('memory_limit', '500M');
@set_time_limit(0);
Run Code Online (Sandbox Code Playgroud)
一旦完成
error_reporting(1);
ini_set('memory_limit', '128M');
@set_time_limit(0);
Run Code Online (Sandbox Code Playgroud) 我正在开发一个项目,我正在使用PHPExcel库来做一些事情.我今天遇到了第一个问题.读取和写入Excel工作很好,但后来我开始从Excel工作表中取出,然后进入Mongo.我基本上从Excel中读取了一些数组,然后尝试将该数组保存到Mongo中$collection->insert($array);
我有一个异常告诉我它无法插入任何零字符键.我var_dum()在我的阵列上做了一个看看它在世界上哪里得到一个空白键,这就是转储产生的.
array(10)
{
["um"]=> string(2) "EA"
["desc"]=> string(37) "FRAME WELDMENT, NITRATE REMOVAL TANKS"
["vws_num"]=> NULL
["part_num"]=> string(10) "SD-0408-01"
["manufac"]=> object(PHPExcel_RichText)#665 (1)
{
["_richTextElements" : "PHPExcel_RichText" : private]=> array(3)
{
[0]=> object(PHPExcel_RichText_TextElement)#184 (1)
{
["_text":"PHPExcel_RichText_TextElement":private]=> string(23) "VEOLIA WATER SOLUTIONS "
}
[1]=> object(PHPExcel_RichText_Run)#179 (2)
{
["_font":"PHPExcel_RichText_Run":private]=> object(PHPExcel_Style_Font)#183 (12)
{
["_name":"PHPExcel_Style_Font":private]=> string(5) "SWGDT"
["_size":"PHPExcel_Style_Font":private]=> string(2) "10"
["_bold":"PHPExcel_Style_Font":private]=> bool(false)
["_italic":"PHPExcel_Style_Font":private]=> bool(false)
["_superScript":"PHPExcel_Style_Font":private]=> bool(false)
["_subScript":"PHPExcel_Style_Font":private]=> bool(false)
["_underline":"PHPExcel_Style_Font":private]=> string(4) "none"
["_strikethrough":"PHPExcel_Style_Font":private]=> bool(false)
["_color":"PHPExcel_Style_Font":private]=> object(PHPExcel_Style_Color)#186 (4)
{
["_argb":"PHPExcel_Style_Color":private]=> string(8) "FF000000"
["_isSupervisor":"PHPExcel_Style_Color":private]=> bool(false) …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用PHPExcel创建一个Excel文件.源数据是一个关联数组数组,每个数组都存储一个名称和地址:
Array
(
[0] => Array
(
[name] => Joe Bloggs
[address] => 10 Main St
Bayside
Big Town ABC123
)
[1] => Array
(
[name] => Mary Bloggs
[address] => 18 Bridge St
Riverside
Small Town XYZ987
)
:
:
)
Run Code Online (Sandbox Code Playgroud)
如您所见,地址包含换行符.我使用以下代码使用PHP将此数据写入Excel文件:
$phpExcel = new PHPExcel();
$phpExcel->setActiveSheetIndex(0);
$phpExcel->getActiveSheet()->getCell('A1')->setValue("Name");
$phpExcel->getActiveSheet()->getCell('B1')->setValue("Address");
$index = 2;
foreach($rows as $row) {
$phpExcel->getActiveSheet()->getCell('A'.$index)->setValue($row["name"]);
$phpExcel->getActiveSheet()->getCell('B'.$index)->setValue($row["address"]);
$index++;
}
$objWriter = PHPExcel_IOFactory::createWriter($phpExcel, 'Excel2007');
$filename = "outputs/excel/data.xlsx";
$objWriter->save($filename);
Run Code Online (Sandbox Code Playgroud)
但是,生成的Excel文件不包含我想要保留的换行符.
Name Address
Joe Bloggs 10 Main St Bayside Big Town …Run Code Online (Sandbox Code Playgroud) 我正在从简单的电子表格中读取数据,但是getCell()返回行中的所有数据而不仅仅是指定的单元格.
例如,我在前几个单元格中有一个带有随机文本的电子表格.
__A__ __B__ __C__ __D__ __E__ 1 | aa | bb | cc | dd | ee | 2 |_____|_____|_____|_____|_____|
我启动PHPExcel并运行此代码:
$objReader = PHPExcel_IOFactory::createReaderForFile($file);
$objPHPExcel = $objReader->load($file);
$foo = $objPHPExcel->getActiveSheet()->getCellByColumnAndRow('A', 1)->getValue();
$bar = $objPHPExcel->getActiveSheet()->getCell('A1')->getValue();
Run Code Online (Sandbox Code Playgroud)
两种结果$foo ,并 $bar为所有值的一个字符串:
aa bb cc dd ee
为什么会这样?谢谢.
PHP v5.3.13
PHPExcel v1.7.9
我需要在PHPExcel中将html文件(test.html)转换为excel
myhtml文件text.html它是保存test.php但是包含html
请想一想如何实现这个
我需要在打印长数据表(如此)时将表头行放到每个打印页面上,但我在PHPExcel中找不到任何相关设置,是否有人遇到同样的问题可以帮助我?
在PHPExcel中,如何删除名称为工作表的工作表?
我有这个,但它不起作用:
$objWorkSheet->removeSheetByIndex("Worksheet");
Run Code Online (Sandbox Code Playgroud) 将php版本从7.0升级到7.1时出现问题。我正在使用PHPExcel Laravel创建/导出xls文件。
错误消息是“遇到格式错误的数值”。但是,当我将类型从xls更改为xlsx时,运行良好但格式错误。我认为问题是因为我升级了php版本。
已经尝试更改代码,进行修改,但是一切都一样。有人可以帮忙吗?
MyController看起来像:
public function exportPo(Request $request)
{
try{
if($request->getMethod() == 'POST'){
$input = $request->all();
$validator = Validator::make($input, [
'start_date' => 'required|date',
'end_date' => 'required|date',
]);
if ($validator->fails()) {
return redirect(route('export-po'))
->withErrors($validator)
->withInput();
}
$postData = [];
$postData['search_term']['date'] = [
'start_date'=> $input['start_date'],
'end_date'=> $input['end_date']
];
if(count($postData) > 0){
//Export the excel file here
$poList = EprocModel::getPostData('/listPurchaseOrder', $postData);
$poListArr = json_decode($poList, true);
if(isset($poListArr['data'])){
$row = [];
foreach($poListArr['data'] as $data){
switch($data['status_po']){
case 0:
$status = 'Baru';
break;
case 2:
$status …Run Code Online (Sandbox Code Playgroud) 我需要读取一个.xls文件并将其放入一个数组中.我正在使用laravel-excel包来读取excel文件.
我有一个像这样的Excel文件:
我需要这样一个数组:
[
'9921234567' => 'First Text',
'9929876544' => 'Second Text',
'9927654321' => 'Third Text',
'9928765432' => 'Fourth Text',
]
Run Code Online (Sandbox Code Playgroud)
到目前为止我尝试了什么:
Excel::load('sample.xls', function($reader) {
$reader->dd();
});
Run Code Online (Sandbox Code Playgroud)
问题:
问题是它将第一行读为列!
0 => RowCollection {#619
#title: "Sheet1"
#items: array:3 [
0 => CellCollection {#623
#title: null
#items: array:2 [
9921234567 => 9929876544.0
"first_text" => "Second Text"
]
}
1 => CellCollection {#624
#title: null
#items: array:2 [
9921234567 => 9927654321.0
"first_text" => "Third Text"
]
}
2 => …Run Code Online (Sandbox Code Playgroud)