php - 致命错误:无法重新声明先前声明的函数()
问题描述
我知道有很多类似问题的问题,但我一直在寻找答案,但仍然找不到我的问题。我已经尝试了几种方法来解决这个问题,但我找不到任何解决方案...
我的代码的一部分:(我没有在其他任何地方使用这个函数)
function Validar($r)
{
$Msg = '';
$aError = array();
if (strlen($Msg) > 0) {
$aError[] = array('success' => false);
$aError[] = array('msg' => '1001');
$aError[] = array('error' => $Msg);;
}
我得到以下信息:
致命错误:无法在 C:\wamp64\www\myProject-dev\public\cajas 中重新声明 Validar()(之前在 C:\wamp64\www\myProject-dev\public\cajas\reposiciones\controller3.php:20 中声明) \reposiciones\controller3.php 第 20 行
所以我加了
if(function_exists("Validar")){
echo "The function already exists.";
} else {
function Validar($r){
$Msg = '';
$aError = array();
if (strlen($Msg) > 0) {
$aError[] = array('success' => false);
$aError[] = array('msg' => '1001');
$aError[] = array('error' => $Msg);;
}
所以我几乎不知道发生了什么,我的信息有 256 行
该功能已经存在。
其次是
致命错误:未捕获错误:已达到“256”的最大函数嵌套级别,正在中止!在第 39 行的 C:\wamp64\www\myProject-dev\public\lib\DataSourceResult.php
错误:已达到“256”的最大函数嵌套级别,正在中止!在第 39 行的 C:\wamp64\www\myProject-dev\public\lib\DataSourceResult.php
还有一张像这样的桌子:(对不起,我不知道如何在我的问题中制作一张)
<table><tbody><tr><th>#</th><th>Time</th><th>Memory</th><th>Function</th><th>Location</th></tr><tr><td>1</td><td>0.0017</td><td>371568</td><td>{main}( )</td><td>...\controller3.php:0</td></tr><tr><td>2</td><td>0.0053</td><td>474480</td><td>include( 'C:\wamp64\www\myProject-dev\public\cajas\reposiciones\controller3.php' )</td><td>...\controller3.php:36</td></tr><tr><td>3</td><td>0.0091</td><td>476240</td><td>include( 'C:\wamp64\www\myProject-dev\public\cajas\reposiciones\controller3.php' )</td><td>...\controller3.php:36</td></tr></tbody></table>
<br><br><br>
And this repeats 256 times.
这是什么意思,我该如何解决?也许你可以指导或建议我一点,我有点新。
提前致谢。
解决方案
如果有人遇到我同样的问题,@Don'tPanic 的答案就是解决问题的方法。有问题的代码部分是
if (file_exists("controller3.php")) include "controller3.php";
在我的验证功能删除/评论它之后,解决方案就是它,它完全按预期工作;没有循环,没有错误。
推荐阅读
- excel - 每隔 n 周插入一个值
- javascript - 没有获得 JS 功能
- python - 有没有办法将随机变量变成非随机变量?解决了
- excel - 是否可以使用 NPOI 更新 Blazor wasm 中的 Excel 文件单元格
- sql - sql server - 将float转换为varchar时出错
- angular - 为什么Angular将数字输入的空值设为null?
- apache-kafka-streams - KAFKA STREAM 的 JSON 反序列化器?
- github-actions - Githubactions:连接到 localhost:80 [localhost/127.0.0.1, localhost/0:0:0:0:0:0:0:1] 失败:连接被拒绝
- apache-spark - 处理 Databricks 自动加载器中的重复项
- java - Java 仅在 ForkJoinPool 提交后执行代码