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

Я хочу иметь функцию, которая принимает 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();

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

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

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

1

Решение

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

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

Другие решения

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

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

}
2

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

public function getLoggedInUserId($username=""){
$username = ($username == "") ? $this->usrname : $username;
}
2
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector