Skip to content

Commit 0f7d47b

Browse files
committed
fix: $requset type in BaseController and BaseResource
To suppress PHPStan error like Call to an undefined method CodeIgniter\HTTP\RequestInterface::getPost()
1 parent 9be490d commit 0f7d47b

2 files changed

Lines changed: 17 additions & 1 deletion

File tree

app/Controllers/BaseController.php

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,8 @@
33
namespace App\Controllers;
44

55
use CodeIgniter\Controller;
6+
use CodeIgniter\HTTP\CLIRequest;
7+
use CodeIgniter\HTTP\IncomingRequest;
68
use CodeIgniter\HTTP\RequestInterface;
79
use CodeIgniter\HTTP\ResponseInterface;
810
use Psr\Log\LoggerInterface;
@@ -22,7 +24,7 @@ abstract class BaseController extends Controller
2224
/**
2325
* Instance of the main Request object.
2426
*
25-
* @var RequestInterface
27+
* @var CLIRequest|IncomingRequest
2628
*/
2729
protected $request;
2830

@@ -40,6 +42,8 @@ abstract class BaseController extends Controller
4042
*/
4143
public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger)
4244
{
45+
assert($request instanceof IncomingRequest || $request instanceof CLIRequest);
46+
4347
// Do Not Edit This Line
4448
parent::initController($request, $response, $logger);
4549

system/RESTful/BaseResource.php

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,12 +12,21 @@
1212
namespace CodeIgniter\RESTful;
1313

1414
use CodeIgniter\Controller;
15+
use CodeIgniter\HTTP\CLIRequest;
16+
use CodeIgniter\HTTP\IncomingRequest;
1517
use CodeIgniter\HTTP\RequestInterface;
1618
use CodeIgniter\HTTP\ResponseInterface;
1719
use Psr\Log\LoggerInterface;
1820

1921
abstract class BaseResource extends Controller
2022
{
23+
/**
24+
* Instance of the main Request object.
25+
*
26+
* @var CLIRequest|IncomingRequest
27+
*/
28+
protected $request;
29+
2130
/**
2231
* @var string|null The model that holding this resource's data
2332
*/
@@ -33,7 +42,10 @@ abstract class BaseResource extends Controller
3342
*/
3443
public function initController(RequestInterface $request, ResponseInterface $response, LoggerInterface $logger)
3544
{
45+
assert($request instanceof IncomingRequest || $request instanceof CLIRequest);
46+
3647
parent::initController($request, $response, $logger);
48+
3749
$this->setModel($this->modelName);
3850
}
3951

0 commit comments

Comments
 (0)