Correct format for strings / numbers beginning with zero?

后端 未结 6 1536
梦谈多话
梦谈多话 2020-12-03 01:31

I\'m trying to use PHP to create a file containing a list of phone numbers. It\'s working OK however if the phone number begins with zero, the digit is dropped from the Exce

相关标签:
6条回答
  • 2020-12-03 01:33

    Set the type to string explicitly:

    $type = PHPExcel_Cell_DataType::TYPE_STRING;
    $sheet->getCellByColumnAndRow($column, $rowno)->setValueExplicit($value, $type);
    
    0 讨论(0)
  • 2020-12-03 01:36

    Either:

    // Set the value explicitly as a string
    $objPHPExcel->getActiveSheet()->setCellValueExplicit('A1', '0029', PHPExcel_Cell_DataType::TYPE_STRING);
    

    or

    // Set the value as a number formatted with leading zeroes
    $objPHPExcel->getActiveSheet()->setCellValue('A3', 29);
    $objPHPExcel->getActiveSheet()->getStyle('A3')->getNumberFormat()->setFormatCode('0000');
    
    0 讨论(0)
  • 2020-12-03 01:41

    If for some reason the answers above don't work, you can simply try to wrap your data in quotes, something like this:

    setCellValue('A1, '"' . $phone . '" ')
    

    But your value will be surrounded by quotes in your file as well.

    0 讨论(0)
  • 2020-12-03 01:41

    Use \t with the value like "$phone\t"

    0 讨论(0)
  • 2020-12-03 01:44

    This is an old question but I was recently struggling with this issue and I thought it may help someone in the future if I post some additional info here:

    Whilst the above answers are correct, the formatting gets lost when you remove a column or row that is located before the formatted cell.

    The solution that seems to be resistand to that is:

    $cellRichText = new \PHPExcel_RichText($worksheet->getCell($cell));                        
    $cellRichText->createText($cellValue);
    
    0 讨论(0)
  • 2020-12-03 01:53

    In My case, I'm using

    ->setCellValue('A3', ' '0000123456789000' ');
    

    And it's work perfectly.

    0 讨论(0)
提交回复
热议问题