Excel文件可以在使用PHP 5的服务器上进行下载和编辑,但是在PHP 7中是错误的。它显示致命的错误中断不在循环中
我已经尝试删除循环中的中断,但这不起作用。
public static function TYPE($value = NULL) {
$value = self::flattenArrayIndexed($value);
if (is_array($value) && (count($value) > 1)) {
$a = array_keys($value);
$a = array_pop($a);
// Range of cells is an error
if (self::isCellValue($a)) {
return 16;
// Test for Matrix
} elseif (self::isMatrixValue($a)) {
return 64;
}
} elseif(empty($value)) {
// Empty Cell
return 1;
}
$value = self::flattenSingleValue($value);
if (($value === NULL) || (is_float($value)) || (is_int($value))) {
return 1;
} elseif(is_bool($value)) {
return 4;
} elseif(is_array($value)) {
return 64;
break;
//return false;
} elseif(is_string($value)) {
// Errors
if ((strlen($value) > 0) && ($value{0} == '#')) {
return 16;
}
return 2;
}
return 0;
} // function TYPE()
答案 0 :(得分:1)
代码中唯一的中断是在代码无法到达的部分(返回之后),因此请随时删除它。
Break语句只能在任何循环或切换块内(与continue相同)。 如果自从升级到更高版本的PHP以来您的代码有很多问题,我建议您使用PHP CodeSniffer之类的自动化工具扫描源代码,然后修复报告的错误。