100字范文,内容丰富有趣,生活中的好帮手!
100字范文 > 怎么解决PHP中嵌套函数被调用时出现报错的问题

怎么解决PHP中嵌套函数被调用时出现报错的问题

时间:2019-03-24 12:40:13

相关推荐

怎么解决PHP中嵌套函数被调用时出现报错的问题

php中文网最新课程

每日17点准时技术干货分享

对于初入门的PHP新手来说,在学习关于PHP函数嵌套的知识点时可能会有一定的难度。比如有的朋友在练习PHP函数嵌套相关问题时,会遇到调用内部函数时就会出现报错的情况等。

那么本篇文章就为大家详细得分析介绍关于PHP中特殊函数嵌套函数的处理问题。

下面我们通过具体的代码示例,给大家进行详解。

首先我们创建一段PHP嵌套函数代码示例如下:

<?phpfunction functionName1(){function functionName2(){echo "我是一个被嵌套的函数";}echo "我是一个函数";}functionName2();

此段代码我们通过浏览器访问测试的结果如下图:

如图出现了functionName2函数未被定义的报错,这种情况怎么处理呢?

下面我们在上述代码的基础上,再调用functionName1这个函数,代码如下:

<?phpfunction functionName1(){function functionName2(){echo "我是一个被嵌套的函数";}echo "我是一个函数";}functionName1();functionName2();

我们再通过浏览器测试,结果就如下图:

此时内部函数functionName2就能被成功调用了。

那么如果我们在一个页面多次调用外部函数,又会有什么情况呢?

下面我们再在上述的代码基础上,调用两次functionName1函数,代码如下:

<?phpfunction functionName1(){function functionName2(){echo "我是一个被嵌套的函数";}echo "我是一个函数";}functionName1();functionName1();echo "<br>";functionName2();

通过浏览器访问测试结果如下:

如图出现了不能重新定义functionName2函数的报错,怎么解决避免这样的错误呢?

这里我们就需要用到if判断语句,那么完整的代码示例如下:

<?php// 当外部的函数没有被调用时,内部的函数相当于不存在function functionName1(){if (!function_exists("functionName2")){function functionName2(){echo "我是一个被嵌套的函数";}}echo "我是一个函数";}functionName1();functionName1();echo "<br>";functionName2();

最后我们再通过浏览器访问的测试结果如下图:

综上所述,我们可以得出一些重要结论:

1、当外部函数没有被调用时,内部的函数就相当于不存在,否则直接调用就会出现上述中函数未定义的错误。

2、当调用多次外部函数时,就需要用一个判断语句来声明嵌套函数,否则就会出现不能重新被定义的错误。

:function_exists() 可以判断指定函数是否被定义。

-END-

声明:本文选自「php中文网」,搜索「 phpcnnew 」即可关注!

▼请点击下方:“阅读原文”,在线查看全部文章内容!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。