codeigniter4.3.8 to 4.5.1 upgrade...
This commit is contained in:
parent
340b0b9ff8
commit
5d1e66f131
113
app/Config/Routing.php
Normal file
113
app/Config/Routing.php
Normal file
@ -0,0 +1,113 @@
|
|||||||
|
<?php
|
||||||
|
|
||||||
|
/**
|
||||||
|
* This file is part of CodeIgniter 4 framework.
|
||||||
|
*
|
||||||
|
* (c) CodeIgniter Foundation <admin@codeigniter.com>
|
||||||
|
*
|
||||||
|
* For the full copyright and license information, please view
|
||||||
|
* the LICENSE file that was distributed with this source code.
|
||||||
|
*/
|
||||||
|
|
||||||
|
namespace Config;
|
||||||
|
|
||||||
|
use CodeIgniter\Config\Routing as BaseRouting;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Routing configuration
|
||||||
|
*/
|
||||||
|
class Routing extends BaseRouting
|
||||||
|
{
|
||||||
|
/**
|
||||||
|
* An array of files that contain route definitions.
|
||||||
|
* Route files are read in order, with the first match
|
||||||
|
* found taking precedence.
|
||||||
|
*
|
||||||
|
* Default: APPPATH . 'Config/Routes.php'
|
||||||
|
*/
|
||||||
|
public array $routeFiles = [
|
||||||
|
APPPATH . 'Config/Routes.php',
|
||||||
|
];
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The default namespace to use for Controllers when no other
|
||||||
|
* namespace has been specified.
|
||||||
|
*
|
||||||
|
* Default: 'App\Controllers'
|
||||||
|
*/
|
||||||
|
public string $defaultNamespace = 'App\Controllers';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The default controller to use when no other controller has been
|
||||||
|
* specified.
|
||||||
|
*
|
||||||
|
* Default: 'Home'
|
||||||
|
*/
|
||||||
|
public string $defaultController = 'Home';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* The default method to call on the controller when no other
|
||||||
|
* method has been set in the route.
|
||||||
|
*
|
||||||
|
* Default: 'index'
|
||||||
|
*/
|
||||||
|
public string $defaultMethod = 'index';
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Whether to translate dashes in URIs to underscores.
|
||||||
|
* Primarily useful when using the auto-routing.
|
||||||
|
*
|
||||||
|
* Default: false
|
||||||
|
*/
|
||||||
|
public bool $translateURIDashes = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sets the class/method that should be called if routing doesn't
|
||||||
|
* find a match. It can be either a closure or the controller/method
|
||||||
|
* name exactly like a route is defined: Users::index
|
||||||
|
*
|
||||||
|
* This setting is passed to the Router class and handled there.
|
||||||
|
*
|
||||||
|
* If you want to use a closure, you will have to set it in the
|
||||||
|
* class constructor or the routes file by calling:
|
||||||
|
*
|
||||||
|
* $routes->set404Override(function() {
|
||||||
|
* // Do something here
|
||||||
|
* });
|
||||||
|
*
|
||||||
|
* Example:
|
||||||
|
* public $override404 = 'App\Errors::show404';
|
||||||
|
*/
|
||||||
|
public ?string $override404 = null;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If TRUE, the system will attempt to match the URI against
|
||||||
|
* Controllers by matching each segment against folders/files
|
||||||
|
* in APPPATH/Controllers, when a match wasn't found against
|
||||||
|
* defined routes.
|
||||||
|
*
|
||||||
|
* If FALSE, will stop searching and do NO automatic routing.
|
||||||
|
*/
|
||||||
|
public bool $autoRoute = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* If TRUE, will enable the use of the 'prioritize' option
|
||||||
|
* when defining routes.
|
||||||
|
*
|
||||||
|
* Default: false
|
||||||
|
*/
|
||||||
|
public bool $prioritize = false;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Map of URI segments and namespaces. For Auto Routing (Improved).
|
||||||
|
*
|
||||||
|
* The key is the first URI segment. The value is the controller namespace.
|
||||||
|
* E.g.,
|
||||||
|
* [
|
||||||
|
* 'blog' => 'Acme\Blog\Controllers',
|
||||||
|
* ]
|
||||||
|
*
|
||||||
|
* @var array [ uri_segment => namespace ]
|
||||||
|
*/
|
||||||
|
public array $moduleRoutes = [];
|
||||||
|
}
|
||||||
@ -5,12 +5,12 @@
|
|||||||
"homepage": "https://codeigniter.com",
|
"homepage": "https://codeigniter.com",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"require": {
|
"require": {
|
||||||
"php": "^7.4 || ^8.0",
|
"php": "^8.2",
|
||||||
"phpoffice/phpspreadsheet": "^1.27",
|
"phpoffice/phpspreadsheet": "^1.27",
|
||||||
"cloudflare/sdk": "1.3",
|
"cloudflare/sdk": "^1.3",
|
||||||
"onokumus/metismenu": "dev-master",
|
"onokumus/metismenu": "dev-master",
|
||||||
"twbs/bootstrap": "5.2.3",
|
"twbs/bootstrap": "^5.2.3",
|
||||||
"codeigniter4/framework": "4.3.8"
|
"codeigniter4/framework": "^4.5.1"
|
||||||
},
|
},
|
||||||
"require-dev": {
|
"require-dev": {
|
||||||
"fakerphp/faker": "^1.9",
|
"fakerphp/faker": "^1.9",
|
||||||
|
|||||||
@ -1,7 +1,12 @@
|
|||||||
<?php
|
<?php
|
||||||
|
|
||||||
// Check PHP version.
|
/*
|
||||||
$minPhpVersion = '7.4'; // If you update this, don't forget to update `spark`.
|
*---------------------------------------------------------------
|
||||||
|
* CHECK PHP VERSION
|
||||||
|
*---------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
$minPhpVersion = '8.1'; // If you update this, don't forget to update `spark`.
|
||||||
if (version_compare(PHP_VERSION, $minPhpVersion, '<')) {
|
if (version_compare(PHP_VERSION, $minPhpVersion, '<')) {
|
||||||
$message = sprintf(
|
$message = sprintf(
|
||||||
'Your PHP version must be %s or higher to run CodeIgniter. Current version: %s',
|
'Your PHP version must be %s or higher to run CodeIgniter. Current version: %s',
|
||||||
@ -9,9 +14,18 @@ if (version_compare(PHP_VERSION, $minPhpVersion, '<')) {
|
|||||||
PHP_VERSION
|
PHP_VERSION
|
||||||
);
|
);
|
||||||
|
|
||||||
exit($message);
|
header('HTTP/1.1 503 Service Unavailable.', true, 503);
|
||||||
|
echo $message;
|
||||||
|
|
||||||
|
exit(1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
*---------------------------------------------------------------
|
||||||
|
* SET THE CURRENT DIRECTORY
|
||||||
|
*---------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
// Path to the front controller (this file)
|
// Path to the front controller (this file)
|
||||||
define('FCPATH', __DIR__ . DIRECTORY_SEPARATOR);
|
define('FCPATH', __DIR__ . DIRECTORY_SEPARATOR);
|
||||||
|
|
||||||
@ -29,59 +43,14 @@ if (getcwd() . DIRECTORY_SEPARATOR !== FCPATH) {
|
|||||||
* and fires up an environment-specific bootstrapping.
|
* and fires up an environment-specific bootstrapping.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Load our paths config file
|
// LOAD OUR PATHS CONFIG FILE
|
||||||
// This is the line that might need to be changed, depending on your folder structure.
|
// This is the line that might need to be changed, depending on your folder structure.
|
||||||
require FCPATH . '../app/Config/Paths.php';
|
require FCPATH . '../app/Config/Paths.php';
|
||||||
// ^^^ Change this line if you move your application folder
|
// ^^^ Change this line if you move your application folder
|
||||||
|
|
||||||
$paths = new Config\Paths();
|
$paths = new Config\Paths();
|
||||||
|
|
||||||
// Location of the framework bootstrap file.
|
// LOAD THE FRAMEWORK BOOTSTRAP FILE
|
||||||
require rtrim($paths->systemDirectory, '\\/ ') . DIRECTORY_SEPARATOR . 'bootstrap.php';
|
require $paths->systemDirectory . '/Boot.php';
|
||||||
|
|
||||||
// Load environment settings from .env files into $_SERVER and $_ENV
|
exit(CodeIgniter\Boot::bootWeb($paths));
|
||||||
require_once SYSTEMPATH . 'Config/DotEnv.php';
|
|
||||||
(new CodeIgniter\Config\DotEnv(ROOTPATH))->load();
|
|
||||||
|
|
||||||
// Define ENVIRONMENT
|
|
||||||
if (! defined('ENVIRONMENT')) {
|
|
||||||
define('ENVIRONMENT', env('CI_ENVIRONMENT', 'production'));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Load Config Cache
|
|
||||||
// $factoriesCache = new \CodeIgniter\Cache\FactoriesCache();
|
|
||||||
// $factoriesCache->load('config');
|
|
||||||
// ^^^ Uncomment these lines if you want to use Config Caching.
|
|
||||||
|
|
||||||
/*
|
|
||||||
* ---------------------------------------------------------------
|
|
||||||
* GRAB OUR CODEIGNITER INSTANCE
|
|
||||||
* ---------------------------------------------------------------
|
|
||||||
*
|
|
||||||
* The CodeIgniter class contains the core functionality to make
|
|
||||||
* the application run, and does all the dirty work to get
|
|
||||||
* the pieces all working together.
|
|
||||||
*/
|
|
||||||
|
|
||||||
$app = Config\Services::codeigniter();
|
|
||||||
$app->initialize();
|
|
||||||
$context = is_cli() ? 'php-cli' : 'web';
|
|
||||||
$app->setContext($context);
|
|
||||||
|
|
||||||
/*
|
|
||||||
*---------------------------------------------------------------
|
|
||||||
* LAUNCH THE APPLICATION
|
|
||||||
*---------------------------------------------------------------
|
|
||||||
* Now that everything is set up, it's time to actually fire
|
|
||||||
* up the engines and make this app do its thang.
|
|
||||||
*/
|
|
||||||
|
|
||||||
$app->run();
|
|
||||||
|
|
||||||
// Save Config Cache
|
|
||||||
// $factoriesCache->save('config');
|
|
||||||
// ^^^ Uncomment this line if you want to use Config Caching.
|
|
||||||
|
|
||||||
// Exits the application, setting the exit code for CLI-based applications
|
|
||||||
// that might be watching.
|
|
||||||
exit(EXIT_SUCCESS);
|
|
||||||
|
|||||||
66
spark
66
spark
@ -12,13 +12,16 @@
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* --------------------------------------------------------------------
|
* --------------------------------------------------------------------
|
||||||
* CodeIgniter command-line tools
|
* CODEIGNITER COMMAND-LINE TOOLS
|
||||||
* --------------------------------------------------------------------
|
* --------------------------------------------------------------------
|
||||||
* The main entry point into the CLI system and allows you to run
|
* The main entry point into the CLI system and allows you to run
|
||||||
* commands and perform maintenance on your application.
|
* commands and perform maintenance on your application.
|
||||||
*
|
*/
|
||||||
* Because CodeIgniter can handle CLI requests as just another web request
|
|
||||||
* this class mainly acts as a passthru to the framework itself.
|
/*
|
||||||
|
*---------------------------------------------------------------
|
||||||
|
* CHECK SERVER API
|
||||||
|
*---------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Refuse to run when called from php-cgi
|
// Refuse to run when called from php-cgi
|
||||||
@ -26,8 +29,13 @@ if (strpos(PHP_SAPI, 'cgi') === 0) {
|
|||||||
exit("The cli tool is not supported when running php-cgi. It needs php-cli to function!\n\n");
|
exit("The cli tool is not supported when running php-cgi. It needs php-cli to function!\n\n");
|
||||||
}
|
}
|
||||||
|
|
||||||
// Check PHP version.
|
/*
|
||||||
$minPhpVersion = '7.4'; // If you update this, don't forget to update `public/index.php`.
|
*---------------------------------------------------------------
|
||||||
|
* CHECK PHP VERSION
|
||||||
|
*---------------------------------------------------------------
|
||||||
|
*/
|
||||||
|
|
||||||
|
$minPhpVersion = '8.1'; // If you update this, don't forget to update `public/index.php`.
|
||||||
if (version_compare(PHP_VERSION, $minPhpVersion, '<')) {
|
if (version_compare(PHP_VERSION, $minPhpVersion, '<')) {
|
||||||
$message = sprintf(
|
$message = sprintf(
|
||||||
'Your PHP version must be %s or higher to run CodeIgniter. Current version: %s',
|
'Your PHP version must be %s or higher to run CodeIgniter. Current version: %s',
|
||||||
@ -39,15 +47,14 @@ if (version_compare(PHP_VERSION, $minPhpVersion, '<')) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// We want errors to be shown when using it from the CLI.
|
// We want errors to be shown when using it from the CLI.
|
||||||
error_reporting(-1);
|
error_reporting(E_ALL);
|
||||||
ini_set('display_errors', '1');
|
ini_set('display_errors', '1');
|
||||||
|
|
||||||
/**
|
/*
|
||||||
* @var bool
|
*---------------------------------------------------------------
|
||||||
*
|
* SET THE CURRENT DIRECTORY
|
||||||
* @deprecated No longer in use. `CodeIgniter` has `$context` property.
|
*---------------------------------------------------------------
|
||||||
*/
|
*/
|
||||||
define('SPARKED', true);
|
|
||||||
|
|
||||||
// Path to the front controller
|
// Path to the front controller
|
||||||
define('FCPATH', __DIR__ . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR);
|
define('FCPATH', __DIR__ . DIRECTORY_SEPARATOR . 'public' . DIRECTORY_SEPARATOR);
|
||||||
@ -64,41 +71,14 @@ chdir(FCPATH);
|
|||||||
* and fires up an environment-specific bootstrapping.
|
* and fires up an environment-specific bootstrapping.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
// Load our paths config file
|
// LOAD OUR PATHS CONFIG FILE
|
||||||
// This is the line that might need to be changed, depending on your folder structure.
|
// This is the line that might need to be changed, depending on your folder structure.
|
||||||
require FCPATH . '../app/Config/Paths.php';
|
require FCPATH . '../app/Config/Paths.php';
|
||||||
// ^^^ Change this line if you move your application folder
|
// ^^^ Change this line if you move your application folder
|
||||||
|
|
||||||
$paths = new Config\Paths();
|
$paths = new Config\Paths();
|
||||||
|
|
||||||
// Location of the framework bootstrap file.
|
// LOAD THE FRAMEWORK BOOTSTRAP FILE
|
||||||
require rtrim($paths->systemDirectory, '\\/ ') . DIRECTORY_SEPARATOR . 'bootstrap.php';
|
require $paths->systemDirectory . '/Boot.php';
|
||||||
|
|
||||||
// Load environment settings from .env files into $_SERVER and $_ENV
|
exit(CodeIgniter\Boot::bootSpark($paths));
|
||||||
require_once SYSTEMPATH . 'Config/DotEnv.php';
|
|
||||||
(new CodeIgniter\Config\DotEnv(ROOTPATH))->load();
|
|
||||||
|
|
||||||
// Define ENVIRONMENT
|
|
||||||
if (! defined('ENVIRONMENT')) {
|
|
||||||
define('ENVIRONMENT', env('CI_ENVIRONMENT', 'production'));
|
|
||||||
}
|
|
||||||
|
|
||||||
// Grab our CodeIgniter
|
|
||||||
$app = Config\Services::codeigniter();
|
|
||||||
$app->initialize();
|
|
||||||
|
|
||||||
// Grab our Console
|
|
||||||
$console = new CodeIgniter\CLI\Console();
|
|
||||||
|
|
||||||
// Show basic information before we do anything else.
|
|
||||||
if (is_int($suppress = array_search('--no-header', $_SERVER['argv'], true))) {
|
|
||||||
unset($_SERVER['argv'][$suppress]); // @codeCoverageIgnore
|
|
||||||
$suppress = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
$console->showHeader($suppress);
|
|
||||||
|
|
||||||
// fire off the command in the main framework.
|
|
||||||
$exit = $console->run();
|
|
||||||
|
|
||||||
exit(is_int($exit) ? $exit : EXIT_SUCCESS);
|
|
||||||
|
|||||||
@ -1,11 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<title>403 Forbidden</title>
|
|
||||||
</head>
|
|
||||||
<body>
|
|
||||||
|
|
||||||
<p>Directory access is forbidden.</p>
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
Loading…
Reference in New Issue
Block a user