Как использовать возвращаемое значение функции в качестве параметра для другой функции в PHP? - PullRequest
0 голосов
/ 30 мая 2018

Я хочу иметь функцию, которая принимает 1 параметр в качестве ввода, если значение не передается, оно должно принимать значение по умолчанию в качестве вывода другой функции.Я использую класс в PHP для достижения этой цели, но он дает мне ошибку, поскольку «выражение константы содержит недопустимые операции»

<?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();

Ниже приведена ошибкадля указанного выше вызова

Неустранимая ошибка: выражение константы содержит недопустимые операции

Пожалуйста, дайте мне знать, как передать результат функции в качестве параметра для другой функции.Спасибо

Ответы [ 3 ]

0 голосов
/ 30 мая 2018

getLoggedInUserId пользователь должен быть переопределен, как показано ниже

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

}
0 голосов
/ 30 мая 2018

измените свою функцию на это:

public function getLoggedInUserId($username=""){
    $username = ($username == "") ? $this->usrname : $username;
}
0 голосов
/ 30 мая 2018

Поскольку значение по умолчанию должно быть постоянным, вам нужно написать что-то вроде этого ...

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