开发者社区 问答 正文

php 为什么能够给一个不接受参数的函数提供参数??怎么还能这样写。:报错

<?php
$a=3;
function numrow()
{
    return '55';
}

echo numrow($a);

	?> //该程序输出55 ,为什么能够给一个不接受参数的函数提供参数,貌似提供的参数毫无价值。

$a=3;
function numrow()
{
    return '55';
}

$a = numrow($a);
echo $a;

展开
收起
kun坤 2020-06-09 11:49:18 719 分享 版权
1 条回答
写回答
取消 提交回答
  • 1.php是解释性语言(我自己这么叫的,因为PHP会被语法分析器,转成opcode,这个转换过程类似解释,所以变松散了),所以语法不太严格。包括数据类型。
    2.和PHP的应用方向也有关系。php的运行结果大部分显示的网页上,对用户来说就一个数据类型:字符串。而且只要不是致命错误,都应该给用户显示点什么。
    有些东西不要太纠结。 ######php不严格###### php 是弱类型语言。
    在你的例子当中,可以在函数中使用 func_get_args() 来获取函数接收的参数。是否有用要取决于你如何使用了。

    // 例子
    function func()
    {
        print_r(func_get_args()); // 打印所有该函数接收到的参数
    }
    func(1,2,3);
    因为 php允许 定义函数时 不定义参数的个数..

    这样 在调用函数的时候 可以自由传递不同的参数个数.
    函数内部则调用 func_get_args 函数来获取传递给函数的所有参数. ######同javascript,函数的参数是放在一个数组里的,可以传递任意数量的参数###### 这很灵活是好事 ######动态语言,不是静态语言,没那么严格。######为毛 要给一个没有参数的函数提供参数。######您整个函数都没涉及到参数相关的计算,非要传给参数过去干嘛。还妙用?明显就是团队沟通有问题,技术文档不详细。######动态语言的妙用######知道可变参数不? 可以这样。

    2020-06-09 11:49:26
    赞同 展开评论