Home >Backend Development >PHP Problem >What are intrinsic functions in PHP? What is its calling method? What is the difference from external functions?
The previous article introduced you to "What is a callback function? How is it defined? what is the function? (Detailed explanation and examples) ", this article continues to introduce to you what are internal functions in PHP? What is its calling method? What is the difference from external functions? This article will give you different gains. Let’s continue to explore the mysteries of PHP together! ! !
What is an internal function:
The function declared inside the function is an internal function;
Specifically, we take the code as an example:
<?php //内部函数 function outer(){ //在outer函数内部在定义一个函数(内部函数) function inner(){ echo '千帆过尽,回首当年,那份纯净的梦想早已渐行渐远,如今岁月留下的,只是满目荒凉'; } } //内部函数如何调用 inner(); ?>
Code analysis:
First, we define a function outer(), and then we define a function again inside the outer function. At this time The function we defined is the internal function. Secondly, we output (echo) a push string.
However, how do we call the internal function? First, we call inner() directly. The running result shows an error and the unused call was made. defined inner(), but when we see the above code, we can know that we have already defined it, so we can explain that the inner function cannot be called directly from the outside.
<?php /******内部函数*****/ function outer(){ //在outer函数内部再次定义个函数 (内部函数) function inner(){ echo '千帆过尽,回首当年,那份纯净的梦想早已渐行渐远,如今岁月留下的,只是满目荒凉' ; } inner(); } //内部函数如何调用 //inner();内部函数在外部无法直接调用 //内部函数在函数内部如何调用是否有先后顺序 outer(); ?>
However, when we call inner() inside the function, if we want it to execute normally, we only need to call outer() to get our input The result: as shown below:
What will the result be like if we put inner() above the function definition?
According to the results, cannot call undefined inner()
<?php /******内部函数*****/ function outer(){ //在outer函数内部再次定义个函数 (内部函数) inner(); function inner(){ echo '千帆过尽,回首当年,那份纯净的梦想早已渐行渐远,如今岁月留下的,只是满目荒凉' ; } } //内部函数如何调用 //inner();内部函数在外部无法直接调用 //内部函数在函数内部如何调用是否有先后顺序 outer(); ?>
So we learned , inter() cannot be called because the PHP parser knowledge preloads the function and does not execute the outer function, so the internal situation is not known;
How is the internal function called when it is in the external function? ?
<?php /******内部函数*****/ function outer(){ //在outer函数内部再次定义个函数 (内部函数) function inner(){ echo '千帆过尽,回首当年,那份纯净的梦想早已渐行渐远,如今岁月留下的,只是满目荒凉' ; } } //内部函数如何调用 //inner();内部函数在外部无法直接调用 //内部函数在函数内部如何调用是否有先后顺序 //outer(); //内部函数在外部函数,如何调用 outer(); inner(); ?>
Code analysis:
If we want the external function to take effect, we must first call outer(). After we have the internal function, we call the inner() function Call, we will find that the content we want to output will also appear;
Based on the content of the above article, we summarize as follows (the difference between internal functions and external functions is):
1. Can a function be called outside a function?
It cannot be called directly, but after calling the external function, you can call the internal function arbitrarily
2. Can the internal function be called inside the function?
can be called, but it must be called after the internal function is defined, because the PHP parser will only load the external function and will not execute the external function, so it is not known that there are
internal functions in the external function.
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of What are intrinsic functions in PHP? What is its calling method? What is the difference from external functions?. For more information, please follow other related articles on the PHP Chinese website!