函数中的PHP功能(无OOP)奏效



我不在oop中,我想理解为什么在过程模式下我可以声明一个函数依附在函数中而无需错误的函数,但是我可以从" main"并且无法从主要功能打电话?

示例1:在a((中调用b((给出致命错误/为什么a((不查看b((?

<?php
function a(){
  // do something
  b(); //Fatal error: Call to undefined function b()
  function b(){
    // do something
  }
}
a();

示例2:从主呼叫B((给出致命错误(这是逻辑(

<?php
function a(){
  //  do something
  function b(){
    // do something
  }
} 
b(); // Fatal error: Call to undefined function b()

示例3:调用A((,然后从MAIN调用B((不给出错误

<?php
function a(){
    //  do something
    function b(){
        // do something
    }
}
a();
b();

PHP是一种程序编程语言。它将按顺序进行每行。您无法从a()中调用b()的原因是因为尚未声明b()。您想做的是在调用之前声明您的函数

<?php
function a(){
  // do something
  function b(){
    // do something
  }
  b(); 
}
a();

这仍然是不好的做法。将b()a()中脱离:

<?php
function a(){
  // do something
  b();
}
function b(){
  // do something
}
a();

这将允许您随时致电a()b()

最新更新