Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Conert PHP5.6到7.2获取错误-函数Mymodel::mymodelfunction()的参数太少,传入0_Php_Codeigniter - Fatal编程技术网

Conert PHP5.6到7.2获取错误-函数Mymodel::mymodelfunction()的参数太少,传入0

Conert PHP5.6到7.2获取错误-函数Mymodel::mymodelfunction()的参数太少,传入0,php,codeigniter,Php,Codeigniter,我的项目运行在PHP5.6上。 但是现在我需要在PHP7.2中转换这个项目。 因此,当我在PHP7.2中转换它时,我遇到了参数初始化错误 函数Mymodel::mymodelfunction()的参数太少,传入0 因为此参数未定义为默认值 这在本地环境中不起作用,因此会出现相同的错误 但是当我在服务器上运行这段代码时,它就可以正常工作了 所以请建议我,, 对于严格的错误报告,我在本地环境中可以做些什么。您只需将签名更改为: class Mymodel { public static my

我的项目运行在
PHP5.6
上。 但是现在我需要在
PHP7.2
中转换这个项目。 因此,当我在
PHP7.2
中转换它时,我遇到了参数初始化错误

函数Mymodel::mymodelfunction()的参数太少,传入0

因为此参数未定义为默认值

这在本地环境中不起作用,因此会出现相同的错误

但是当我在服务器上运行这段代码时,它就可以正常工作了

所以请建议我,,
对于严格的错误报告,我在本地环境中可以做些什么。

您只需将签名更改为:

class Mymodel
{
    public static mymodelfunction ($argument1)
    {
        (...)
    }
}

确保传递正确的回退值(有时可能需要数组,而不是字符串)。这样,如果不传递参数,您将提供一个回退(默认)值

有关您的问题的核心来源的更多详细信息,请访问PHP手册页面:

您只需更改以下签名:

class Mymodel
{
    public static mymodelfunction ($argument1)
    {
        (...)
    }
}

确保传递正确的回退值(有时可能需要数组,而不是字符串)。这样,如果不传递参数,您将提供一个回退(默认)值

有关您的问题的核心来源的更多详细信息,请访问PHP手册页面:

为什么不通过传递值来修复错误?你是说它在服务器上工作是因为它仍然在运行5.6吗?服务器在7.2中也是如此,如果尝试定义funation的默认值,那么我需要对所有的工作函数做大量的工作。因此,不可能更改所有未设置默认值的函数参数。传递一个值。我认为您的sql模式设置为“strick”,这不允许您发送空值。要么在数据库中设置默认值,要么从控制器发送NULL为什么不通过传递值来修复错误?你是说它在服务器上工作是因为它仍然在运行5.6吗?服务器在7.2中也是如此,如果尝试定义funation的默认值,那么我需要对所有的工作函数做大量的工作。因此,不可能更改所有未设置默认值的函数参数。传递一个值。我认为您的sql模式设置为“strick”,这不允许您发送空值。在数据库中设置默认值或从控制器发送NULL或$argument1=NULL或$argument1=0,具体取决于参数类型B我知道此方法,但这不可能更新所有函数。请建议任何其他方法来解决这个问题。使用“严格错误报告”可以解决此问题@furkanali89如果您想停止获取异常,最简单的方法是使用与服务器上相同的PHP版本运行应用程序,这可能是7.1之前的版本。在PHP7.1中它只是一个例外。您要求将其转换为7.2,而将代码转换为7.2的一部分是以与代码使用相同的方式正确定义函数,这就是我建议编辑代码的原因。谢谢@janmyszkier。当我使用PHP7.0版本时,这是有效的。感谢您的支持。或$argument1=null或$argument1=0,具体取决于参数类型。我知道这个方法,但这不可能更新所有函数。请建议任何其他方法来解决这个问题。使用“严格错误报告”可以解决此问题@furkanali89如果您想停止获取异常,最简单的方法是使用与服务器上相同的PHP版本运行应用程序,这可能是7.1之前的版本。在PHP7.1中它只是一个例外。您要求将其转换为7.2,而将代码转换为7.2的一部分是以与代码使用相同的方式正确定义函数,这就是我建议编辑代码的原因。谢谢@janmyszkier。当我使用PHP7.0版本时,这是有效的。谢谢你的支持。