在PHP条件表达式的末尾,return会做什么?

问题描述

我正在分析PHP代码,但我不明白条件的逻辑,并在结尾处返回。

Route::domain('{name}.{domain}.{tls}')->group(function () {
    $settings = App::make(\Common\Settings\Settings::class);
    $appUrl = config('app.url');
    $currentUrl = \Request::url();
    if ($appUrl === $currentUrl || !$settings->get('builder.enable_subdomains')) return; //<- Here
    Route::get('{page?}','UserSiteController@show')->name('user-site-subdomain');
});

我需要了解在什么情况下执行第6行,但是显然返回会改变一切。

欢迎进行任何澄清或提供更多说明性示例。

解决方法

此功能立即结束,以防止发生

Route::get('{page?}','UserSiteController@show')->name('user-site-subdomain');

在满足条件的情况下被执行

if ($appUrl === $currentUrl || !$settings->get('builder.enable_subdomains'))

满足

$appUrl === $currentUrl !$settings->get('builder.enable_subdomains')等于true)。就像您通常以结束一个功能一样return 4;,但您不返回任何值。

,

它将返回某些内容给调用它的函数。