Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/259.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 我可以用两个名称定义同一个函数吗?_Php - Fatal编程技术网

Php 我可以用两个名称定义同一个函数吗?

Php 我可以用两个名称定义同一个函数吗?,php,Php,我想定义一个函数,但有两个不同的名称。我可以做到这一点: function my1($a, $b) { ...... } function my2($a, $b) { my1($a,$b); } 但我感兴趣的是,如果有一个较短的方法,比如: function my1 & my2 ($a, $b) { ...... } 您可以创建一个递归函数,而不是创建两个相同的函数。例如: function my1($a, $b, $is_recursive = false) { ...

我想定义一个函数,但有两个不同的名称。我可以做到这一点:

function my1($a, $b) { ......  }
function my2($a, $b) { my1($a,$b); }
但我感兴趣的是,如果有一个较短的方法,比如:

function my1 & my2 ($a, $b) { ......  }

您可以创建一个递归函数,而不是创建两个相同的函数。例如:

function my1($a, $b, $is_recursive = false) {
    ...

    if ($is_recursive) {
        my1($a, $b, false);
    }
}

您可以创建一个递归函数,而不是创建两个相同的函数。例如:

function my1($a, $b, $is_recursive = false) {
    ...

    if ($is_recursive) {
        my1($a, $b, false);
    }
}

尝试匿名函数。它允许您使用不同的名称调用相同的函数。像这样

<?php
$function_1 = $function_2 = function($a,$b){ //The anonymous function is assigned names $function_1 & $function_2.
    echo $a.' - '.$b;
};

$function_1('a','b');

$function_2('1','2');
?>


阅读完整的参考资料

尝试匿名函数。它允许您使用不同的名称调用相同的函数。像这样

<?php
$function_1 = $function_2 = function($a,$b){ //The anonymous function is assigned names $function_1 & $function_2.
    echo $a.' - '.$b;
};

$function_1('a','b');

$function_2('1','2');
?>


阅读完整的参考资料

是!为此,您需要使用匿名函数。 一个变量保存函数,另一个变量引用同一个变量

<?php
// Define function
$say_hello_1 = function ()
{
  echo "Hello";
};

// Refer to same function with different name
$say_hello_2 = $say_hello_1;

// Call to both of them
$say_hello_2();
$say_hello_1();

是的!为此,您需要使用匿名函数。 一个变量保存函数,另一个变量引用同一个变量

<?php
// Define function
$say_hello_1 = function ()
{
  echo "Hello";
};

// Refer to same function with different name
$say_hello_2 = $say_hello_1;

// Call to both of them
$say_hello_2();
$say_hello_1();

我只是好奇为什么会这样??为什么你需要两次定义一个函数?你能告诉我们你需要这样做吗?听起来像是个笑话,有这么多的so经验,这将有助于那些试图通过响应them@mainan,你知道吗,在大多数问题中,我都会遇到最不恰当的反问题:“你为什么需要这个”。。。正如我所问,这意味着我需要它。我只是好奇为什么会这样??为什么你需要两次定义一个函数?你能告诉我们你需要这样做吗?听起来像是个笑话,有这么多的so经验,这将有助于那些试图通过响应them@mainan,你知道吗,在大多数问题中,我都会遇到最不恰当的反问题:“你为什么需要这个”。。。正如我所问,这意味着我需要它。答案是在我写作的同时发布的!答案是在我写作的同时发布的!