PHP:通过引用函数将布尔值作为返回值–奇怪的通知
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了PHP:通过引用函数将布尔值作为返回值–奇怪的通知,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1100字,纯文字阅读大概需要2分钟。
内容图文
我有一个默认情况下会返回引用值的函数-但是,如果在处理函数中的内容时出错,则该函数应返回false.
该函数声明如下.
function &find($idx, $pref_array = false) {
if ($pref_array === false)
$pref_array = &$this->preferences;
foreach ($pref_array as $key => $data) {
if ($key == $idx) {
return $pref_array[$idx];
}
else if (is_array($data)) {
$res = &$this->find($idx, &$pref_array[$key]);
if ($res !== false)
return $res;
}
}
return false;
}
PHP给了我一个通知,“只有变量引用应该通过引用返回”.我真的需要把$result = false吗?在我的代码中并返回$result?那会有点荒谬.
在此先感谢您的帮助.
解决方法:
我认为这不是编码通用查找功能的好方法,因为无法确定从该功能返回的FALSE值是否意味着被搜索项的值实际上为FALSE或是否未找到搜索项.
如果您知道FALSE不是合法值而不是OK,那么您应该以其他方式实现find函数.
例如,这种方式:
function find($idx, & $found_value, $pref_array = false) {
// pseudocode
if found:
$found_value = $array[$idx]
return true
else:
return false
}
这样,您始终可以通过检查从函数返回的值来知道是否找到了所请求的项目,并且如果返回的值为TRUE,则可以在$found_value参数所引用的变量中对找到的项目进行引用.
最后,这样您就不会收到任何奇怪的通知了;)
内容总结
以上是互联网集市为您收集整理的PHP:通过引用函数将布尔值作为返回值–奇怪的通知全部内容,希望文章能够帮你解决PHP:通过引用函数将布尔值作为返回值–奇怪的通知所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。