mirror of
https://github.com/retailcrm/PHPExcel.git
synced 2024-11-26 07:16:03 +03:00
Fix to inappropriate replacement of count() with empty().... there may be others I've not spotted yet.
Improved debuglog in calculation engine. git-svn-id: https://phpexcel.svn.codeplex.com/svn/trunk@85403 2327b42d-5241-43d6-9e2a-de5ac946f064
This commit is contained in:
parent
24a9eb285c
commit
21cce674c8
@ -2504,13 +2504,15 @@ class PHPExcel_Calculation {
|
||||
$pad = $rpad = ', ';
|
||||
foreach($value as $row) {
|
||||
if (is_array($row)) {
|
||||
$returnMatrix[] = implode($pad,$row);
|
||||
$returnMatrix[] = implode($pad,array_map(array($this,'_showValue'),$row));
|
||||
$rpad = '; ';
|
||||
} else {
|
||||
$returnMatrix[] = $row;
|
||||
$returnMatrix[] = $this->_showValue($row);
|
||||
}
|
||||
}
|
||||
return '{ '.implode($rpad,$returnMatrix).' }';
|
||||
} elseif(is_string($value) && (trim($value,'"') == $value)) {
|
||||
return '"'.$value.'"';
|
||||
} elseif(is_bool($value)) {
|
||||
return ($value) ? self::$_localeBoolean['TRUE'] : self::$_localeBoolean['FALSE'];
|
||||
}
|
||||
@ -3428,14 +3430,14 @@ class PHPExcel_Calculation {
|
||||
$result = array();
|
||||
if ((is_array($operand1)) && (!is_array($operand2))) {
|
||||
foreach($operand1 as $x => $operandData) {
|
||||
$this->_writeDebug('Evaluating '.$this->_showValue($operandData).' '.$operation.' '.$this->_showValue($operand2));
|
||||
$this->_writeDebug('Evaluating Comparison '.$this->_showValue($operandData).' '.$operation.' '.$this->_showValue($operand2));
|
||||
$this->_executeBinaryComparisonOperation($cellID,$operandData,$operand2,$operation,$stack);
|
||||
$r = $stack->pop();
|
||||
$result[$x] = $r['value'];
|
||||
}
|
||||
} elseif ((!is_array($operand1)) && (is_array($operand2))) {
|
||||
foreach($operand2 as $x => $operandData) {
|
||||
$this->_writeDebug('Evaluating '.$this->_showValue($operand1).' '.$operation.' '.$this->_showValue($operandData));
|
||||
$this->_writeDebug('Evaluating Comparison '.$this->_showValue($operand1).' '.$operation.' '.$this->_showValue($operandData));
|
||||
$this->_executeBinaryComparisonOperation($cellID,$operand1,$operandData,$operation,$stack);
|
||||
$r = $stack->pop();
|
||||
$result[$x] = $r['value'];
|
||||
@ -3443,14 +3445,14 @@ class PHPExcel_Calculation {
|
||||
} else {
|
||||
if (!$recursingArrays) { self::_checkMatrixOperands($operand1,$operand2,2); }
|
||||
foreach($operand1 as $x => $operandData) {
|
||||
$this->_writeDebug('Evaluating '.$this->_showValue($operandData).' '.$operation.' '.$this->_showValue($operand2[$x]));
|
||||
$this->_writeDebug('Evaluating Comparison '.$this->_showValue($operandData).' '.$operation.' '.$this->_showValue($operand2[$x]));
|
||||
$this->_executeBinaryComparisonOperation($cellID,$operandData,$operand2[$x],$operation,$stack,true);
|
||||
$r = $stack->pop();
|
||||
$result[$x] = $r['value'];
|
||||
}
|
||||
}
|
||||
// Log the result details
|
||||
$this->_writeDebug('Evaluation Result is '.$this->_showTypeDetails($result));
|
||||
$this->_writeDebug('Comparison Evaluation Result is '.$this->_showTypeDetails($result));
|
||||
// And push the result onto the stack
|
||||
$stack->push('Array',$result);
|
||||
return true;
|
||||
|
@ -340,7 +340,7 @@ class PHPExcel_ReferenceHelper
|
||||
|
||||
|
||||
// Update workbook: named ranges
|
||||
if (!empty($pSheet->getParent()->getNamedRanges())) {
|
||||
if (count($pSheet->getParent()->getNamedRanges()) > 0) {
|
||||
foreach ($pSheet->getParent()->getNamedRanges() as $namedRange) {
|
||||
if ($namedRange->getWorksheet()->getHashCode() == $pSheet->getHashCode()) {
|
||||
$namedRange->setRange(
|
||||
|
Loading…
Reference in New Issue
Block a user