【问题标题】:How to use function return value as parameter for another function in PHP?如何使用函数返回值作为 PHP 中另一个函数的参数?
【发布时间】:2018-11-09 00:17:39
【问题描述】:

我想要一个函数,它以 1 个参数作为输入,如果没有传递任何值,它应该将默认值作为另一个函数的输出。我在 PHP 中使用 Class 来实现这一点,但它给了我错误,因为“常量表达式包含无效操作”

<?php

class Common
{
    public $usrname;

    function getLoggedInUser(){
        if (ISSET($_SESSION['email'])) {
            $this->usrname = ($_SESSION['email']);
            return $this->usrname;
        }
        return false;
    }

    function getLoggedInUserId($username = $this->usrname){
        echo $username;
    }

}

并将类文件称为

    <?php
    include "common.php"
    $c = new Common;
    $c->getLoggedInUserId();

下面是上面调用的错误显示

致命错误:常量表达式包含无效操作

请告诉我如何将函数结果作为参数传递给另一个函数。谢谢

【问题讨论】:

    标签: php function arguments parameter-passing default-arguments


    【解决方案1】:

    把你的函数改成这样:

    public function getLoggedInUserId($username=""){
        $username = ($username == "") ? $this->usrname : $username;
    }
    

    【讨论】:

    • 感谢您的帮助。明白了:)
    【解决方案2】:

    getLoggedInUserId用户必须重新定义如下

    function getLoggedInUserId($username=""){
        if(empty($username)){
         echo $this->usrname;
        }else{
             echo $username;
        }
    
    }
    

    【讨论】:

      【解决方案3】:

      由于默认值必须是一个常量值,因此您需要编写类似这样的内容...

      function getLoggedInUserId($username = null){
          if ( $username == null ) {
             $username = $this->usrname;
          }
          echo $username;
      }
      

      【讨论】:

        猜你喜欢
        • 2020-10-04
        • 1970-01-01
        • 1970-01-01
        • 2022-01-13
        • 1970-01-01
        • 2016-04-06
        • 2021-04-10
        • 2013-12-24
        • 2010-09-15
        相关资源
        最近更新 更多