小编Pan*_*Jha的帖子

Laravel在null中调用成员函数setCookie() - 从中​​间件返回控制器操作时

你好开发者,

这不是直接重复:调用成员函数setCookie()on null 当我从Middleware调用Controller操作然后在控制器操作中我返回View时,

这是我的路线 web.php

Route::get('/end', [EndPageController::class, 'index'])
->name('survey.end')
->middleware('App\Http\Middleware\LegacyEndCheck');
Run Code Online (Sandbox Code Playgroud)

中间件LegacyEndCheck.php处理功能

public function handle($request, Closure $next)
{
    $sjid = $request->input('sjid', false);

    if( empty($sjid) || strlen($sjid) !== 36 ){
        return app()->make(EndLegacyController::class)->index($request); //I have to call EndLegacyController@index here as I can't change URL using redirect route
    }

    return $next($request);
}
Run Code Online (Sandbox Code Playgroud)

控制器EndLegacyController index动作

public function index(Request $request)
{
    $sjid = $request->input('sjid',false);
    $status = $request->input('status',false);
    if( empty($sjid) || empty($status) ){
        $this->status = 5;
        return view('survey.legacy.end')
            ->with('status', $this->status);
    } …
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-middleware

7
推荐指数
1
解决办法
725
查看次数

WooCommerce - 在 WordPress 搜索查询中包含产品自定义属性

我正在尝试改进我的 WordPress 网站搜索,
我希望用户也能够通过 WooCommerce 产品属性进行搜索。我已经创建了 WooCommerce 产品并通过以下代码添加了所有自定义属性(产品属性):

$attributes = array(
    '_image_number' => array(
        'name' => 'IMAGE ID',
        'value' =>0001,
        'is_visible' => '1',
        'is_variation' => '0',
        'is_taxonomy' => '0'
    ),

    '_year' => array(
        'name' => 'YEAR',
        'value' => 1988),
        'is_visible' => '1',
        'is_variation' => '0',
        'is_taxonomy' => '0'
    ),
);
update_post_meta( $new_post_id, '_product_attributes', $attributes );
Run Code Online (Sandbox Code Playgroud)

meta_key=_product_attributes好的,我的产品已创建,这些属性作为我的属性的序列化数组存储在 Postmeta 中meta_value=
我的搜索表单是:

<form action="<?php echo home_url(); ?>/" method="get" class="wp-search-form">

    <i class="oic-zoom"></i>

    <input type="text" name="s" id="search" placeholder="<?php echo get_search_query() == '' …
Run Code Online (Sandbox Code Playgroud)

php wordpress search wordpress-theming woocommerce

5
推荐指数
0
解决办法
2407
查看次数

如何通过前缀分隔php数组项

当 PHP 数组有共同前缀时,我想将它们分开。

$data = ['status.1', 'status.2', 'status.3',
         'country.244', 'country.24', 'country.845',
         'pm.4', 'pm.9', 'pm.6'];
Run Code Online (Sandbox Code Playgroud)

我希望它们每个都在单独的变量中,例如$status, $countries, $pms将包含:

$status = [1,2,3];
$country = [244, 24, 845]
$pms = [4,9,6]
Run Code Online (Sandbox Code Playgroud)

我当前的代码需要 1.5 秒才能对它们进行分组:

$statuses = [];
$countries = [];
$pms = [];
$start = microtime(true);
foreach($data as $item){
    if(strpos($item, 'status.') !== false){
        $statuses[]= substr($item,7);
    }

    if(strpos($item, 'country.') !== false){
        $countries[]= substr($item,8);
    }

    if(strpos($item, 'pm.') !== false){
        $pms[]= substr($item,3);
    }
}
$time_elapsed_secs = microtime(true) - $start;
print_r($time_elapsed_secs);
Run Code Online (Sandbox Code Playgroud)

我想知道是否有更快的方法来做到这一点

php arrays

3
推荐指数
1
解决办法
758
查看次数

如何为 Lumen 的封闭路线指定路线名称?

您好,我有以下流明路线

$router->get('/end', function (\Illuminate\Http\Request $request) use ($router) {
    $controller = $router->app->make('App\Http\Controllers\Legacy\EndLegacyController');
    return $controller->index($request);
});
Run Code Online (Sandbox Code Playgroud)

我试图给它一个路由名称,以便我可以使用重定向来重定向到该路由,例如redirect()->route('name_of_route')

到目前为止我已经尝试过

})->namedRoute['end'] = '/end'; // No Effect
})->name('end') //Undefined function
Run Code Online (Sandbox Code Playgroud)

但它不起作用这里是当前路线的列表 在此输入图像描述

编辑 由于我的某些要求,我无法使用['as' => 'end', 'uses'=> 'ControllerName@Action']

php laravel lumen

2
推荐指数
1
解决办法
2963
查看次数