如何处理PHP通知(错误)
如果未设置$n,以下代码将生成通知。解决它需要一个附加语句(如何处理PHP通知(错误),php,Php,如果未设置$n,以下代码将生成通知。解决它需要一个附加语句(isset($n))或“声明”$n($n=')。但这一通知有什么后果?下面的代码非常简洁,假设我们在生产中关闭了错误报告,前端没有明显的差异。有什么不好的事情接踵而至吗?普雷斯坦达,可读性等?(很抱歉英语不好) 按照sé的说法,除了糟糕的编码实践之外,通知没有“后果”。您应该在开发机器上使用设置为E\u ALL的error\u reporting进行编码,因此显然会有很多注意事项 我认为您的代码实际上并不整洁,因为您正在测试一个之前未设
isset($n)
)或“声明”$n($n='
)。但这一通知有什么后果?下面的代码非常简洁,假设我们在生产中关闭了错误报告,前端没有明显的差异。有什么不好的事情接踵而至吗?普雷斯坦达,可读性等?(很抱歉英语不好)
按照sé的说法,除了糟糕的编码实践之外,通知没有“后果”。您应该在开发机器上使用设置为E\u ALL
的error\u reporting进行编码,因此显然会有很多注意事项
我认为您的代码实际上并不整洁,因为您正在测试一个之前未设置的变量
建议如下:
<?php
if (!empty($n) && $n == 1)
{
//do something
}
根据sé,除了糟糕的编码实践之外,通知没有“后果”。您应该在开发机器上使用设置为E\u ALL
的error\u reporting进行编码,因此显然会有很多注意事项
我认为您的代码实际上并不整洁,因为您正在测试一个之前未设置的变量
建议如下:
<?php
if (!empty($n) && $n == 1)
{
//do something
}
一个通知意味着,虽然您的代码将按预期工作,但它并不是按“应该”的方式编写的。这就像编译器告诉你“我知道你在这里的意思,我可以做到,但你不应该依赖它。请用不同的方式编写,这样我就不必做假设”
因此,通知本身并不意味着大部分时间都会发生坏事。但是,我不会把任何在代码中接受通知的人称为专业程序员,因为修复通知是一项非常简单的任务,没有任何通知说明您很好地理解了语言的基础。如果有人不能或不想做这么多,这说明了他们
在您的具体示例中,应该执行以下操作:
$n = null; // or some other appropriate initial value
// possibly change the value of $n here
if($n==1) {
//do something
}
请注意,通过编写额外的$n=null
,就编译器而言,您并没有使程序有任何不同(它最终会在发出通知的同时自行执行)。但是,对于阅读代码的人来说,你让它变得非常不同:使用此代码,他们将不会有“WTF this$n
来自哪里?”的时刻。一个通知意味着,虽然你的代码将按预期工作,但它并不是“像它应该的那样”编写的。这就像编译器告诉你“我知道你在这里的意思,我可以做到,但你不应该依赖它。请用不同的方式编写,这样我就不必做假设”
因此,通知本身并不意味着大部分时间都会发生坏事。但是,我不会把任何在代码中接受通知的人称为专业程序员,因为修复通知是一项非常简单的任务,没有任何通知说明您很好地理解了语言的基础。如果有人不能或不想做这么多,这说明了他们
在您的具体示例中,应该执行以下操作:
$n = null; // or some other appropriate initial value
// possibly change the value of $n here
if($n==1) {
//do something
}
请注意,通过编写额外的$n=null
,就编译器而言,您并没有使程序有任何不同(它最终会在发出通知的同时自行执行)。但是,对于阅读代码的人来说,这是非常不同的:使用这段代码,他们不会有“WTF this$n
来自哪里?”的时刻。通常在生产环境中,所有来自PHP库的错误报告在显示给最终用户之前都会被关闭或解析(它仍然被记录)
注意没有任何后果,只需注意开发人员,在您的示例中,使用值初始化变量可能会发生错误。通常在生产环境中,来自PHP库的所有错误报告在显示给最终用户之前都会被关闭或解析(它仍然被记录)
注意没有任何后果,只是注意到开发人员可能会在这里发生一些不好的事情,在您的示例中,使用值初始化变量。我遇到了一个函数,处理“PHP注意”可能会有好处。
功能是:
geoip_record_by_name()
此函数返回“false”,并在数据库中找不到的IP上发送“PHP通知”。
标准是为内部网络保留IP,否则将找不到本地主机。
作为一种可怕的做法,此函数将此正常情况视为床编码。WRRRRR
有一种解决方案,可以在发送到此函数之前过滤本地IP(假设geoip数据库覆盖了所有其他地址)
我把这个GeIPIPReordOrthByNAMEY()看作是PEST函数,处理“PHP通知”是有道理的。
我遇到了一个函数,处理“PHP通知”可能是有益的。
功能是:
geoip_record_by_name()
此函数返回“false”,并在数据库中找不到的IP上发送“PHP通知”。
标准是为内部网络保留IP,否则将找不到本地主机。
作为一种可怕的做法,此函数将此正常情况视为床编码。WRRRRR
有一种解决方案,可以在发送到此函数之前过滤本地IP(假设geoip数据库覆盖了所有其他地址)
我把这个GeIPIPReordOrthByNAMEY()看作是PEST函数,处理“PHP通知”是有道理的。
谢谢你的空提示。如果我理解正确,它包括isset($n)
和$n!=''代码>?我的意思是,最整洁(或最短)的代码是去$n==1
并注意,因为如果它在生产中不起作用。我的编辑只是一个实验,真的。一点HTML是允许的。谢谢你的提示。如果我理解正确,它包括isset($n)