我有一個導(dǎo)出到 Excel 按鈕,可以下載 Excel 文件。但是,當(dāng)我單擊時,它顯示錯誤為嘗試訪問 int 類型值的數(shù)組偏移量我的代碼是這樣的:public static function dataTypeForValue($pValue = null) { // Match the value against a few data types if ($pValue === null) { return PHPExcel_Cell_DataType::TYPE_NULL; } elseif ($pValue === '') { return PHPExcel_Cell_DataType::TYPE_STRING; } elseif ($pValue instanceof PHPExcel_RichText) { return PHPExcel_Cell_DataType::TYPE_INLINE; } elseif ($pValue[0] === '=' && strlen($pValue) > 1) { //error comes in this line return PHPExcel_Cell_DataType::TYPE_FORMULA; } elseif (is_bool($pValue)) { return PHPExcel_Cell_DataType::TYPE_BOOL; } elseif (is_float($pValue) || is_int($pValue)) { return PHPExcel_Cell_DataType::TYPE_NUMERIC; } elseif (preg_match('/^[\+\-]?([0-9]+\\.?[0-9]*|[0-9]*\\.?[0-9]+)([Ee][\-\+]?[0-2]?\d{1,3})?$/', $pValue)) { $tValue = ltrim($pValue, '+-'); if (is_string($pValue) && $tValue[0] === '0' && strlen($tValue) > 1 && $tValue[1] !== '.') { return PHPExcel_Cell_DataType::TYPE_STRING; } elseif ((strpos($pValue, '.') === false) && ($pValue > PHP_INT_MAX)) { return PHPExcel_Cell_DataType::TYPE_STRING; } return PHPExcel_Cell_DataType::TYPE_NUMERIC; } elseif (is_string($pValue) && array_key_exists($pValue, PHPExcel_Cell_DataType::getErrorCodes())) { return PHPExcel_Cell_DataType::TYPE_ERROR; } return PHPExcel_Cell_DataType::TYPE_STRING; }}這個問題的解決方案是什么..?
3 回答

弒天下
TA貢獻(xiàn)1818條經(jīng)驗 獲得超8個贊
在 PHPExcel 文件“DefaultValueBinder.php”中,替換以下第 82 行:
} elseif ($pValue[0] === '=' && strlen($pValue) > 1) {
具有以下內(nèi)容:
} elseif (0 === strpos($pValue, '=') && strlen($pValue) > 1) {

慕尼黑8549860
TA貢獻(xiàn)1818條經(jīng)驗 獲得超11個贊
(!is_int($pValue) && $pValue[0] === '=' && strlen($pValue) > 1)
應(yīng)該管用。$pValue[0]
不適用于整數(shù),因此在繼續(xù)之前請檢查它是否是 int。
- 3 回答
- 0 關(guān)注
- 276 瀏覽
添加回答
舉報
0/150
提交
取消