Как отобразить строку из вызова функции внутри конкатенации? - PullRequest
0 голосов
/ 16 января 2019

Мне нужно объединить / объединить строки из возврата вызова функции и из переменной без использования традиционной конкатенации ..

В этом сценарии должна отображаться строка URL.

Ниже приведен мой действительный код.

КОД:

$test = "{ config('app.url') }/{ $username }";
die(print_r($test));

Текущий результат:

{ config('app.url') }/testuser

Ожидаемый результат:

http://localhost:8000/testuser

Ответы [ 3 ]

0 голосов
/ 16 января 2019

Это невозможно. Вы можете анализировать переменные только внутри строки. Единственный способ - присвоить результат функции переменной:

$url = config('app.url');
$test = "{$url}/{$username}";

Вы можете узнать больше о Разбор переменных в строках

0 голосов
/ 16 января 2019

Вы можете попробовать следующим образом

<?php

$_ = function ( $v ) { return $v; };

function config($url)
{
    return $url;
}

$username = 'u_name';
echo "{$_( config('app.url') )}/{$username}";
0 голосов
/ 16 января 2019

Вы можете прочитать больше о сложном (фигурном) синтаксисе в строке в кавычках, однако вы можете достичь того, чего хотите, с помощью этого кода:

$test = "{${config('app.url')}}/{$username}";
die(print_r($test));

Но я лично предпочитаю:

$appUrl = config('app.url');
$test = "{$appUrl}/{$username}";
die(print_r($test));

Это работает для вас?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...