как выполнить функцию с тем же именем, что и переменная в laravel

Если у вас есть такая конфигурация:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot "/var/www/example.com"

    <FilesMatch "\.php$">
        SetHandler "proxy:fcgi://127.0.0.1:9000"
    </FilesMatch>
</VirtualHost>

Раскомментируйте следующие строки в вашем httpd.conf

LoadModule proxy_module lib/httpd/modules/mod_proxy.so
LoadModule proxy_fcgi_module lib/httpd/modules/mod_proxy_fcgi.so

Это работает для меня

0
задан Ya Basha 25 March 2019 в 06:31
поделиться

2 ответа

Как насчет

App\User::find(1)->$type;

Также вы хотите использовать строку & amp; переменная

App\User::find(1)->$type . '_test';

Однако, если вы хотите использовать строку как первую, я думаю, вам нужно заранее создать переменную и использовать первый подход.

$type = "xx_$type_xx"
App\User::find(1)->$type;

Принимая во внимание, что App\User::find(1)->{$type}; работает,

Но App\User::find(1)->{$type . 'text'}; не работает.

0
ответ дан senty 25 March 2019 в 06:31
поделиться

Вы называете атрибуты / свойства как функции?

До сих пор я думаю, что вы имели в виду переменные .

Если вы хотите получить доступ к таким свойствам, как passport_expire или residency, то вы можете попробовать как

$user = App\User::find(1);
foreach  (array_keys($documents) as $document) {
    $documents[$document] = $user->{$document};
}

Приведенный выше код обновит массив $documents со значениями [ 114] свойства объекта.

Но, если вы хотите выполнить как функции , как вы упомянули, вам нужно попробовать call_user_func или call_user_func_array

0
ответ дан ssi-anik 25 March 2019 в 06:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: