在codeigniter 3中集成碳库

问题描述 投票:1回答:2

我很难尝试将我的项目中的格栅DateTime库carbon库集成到codeigniter 3中我尝试了这个

$this->load->library('carbon');

它给了我一个错误

not existing class

我认为问题是命名空间,因为碳使用命名空间碳\碳

先感谢您。

php codeigniter php-carbon
2个回答
1
投票

简单步骤:

  1. 直接下载:https://github.com/briannesbitt/Carbon/blob/master/src/Carbon/Carbon.php
  2. 将Carbon.php放在应用程序/库中
  3. 创建Mcarbon.php <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed'); require_once dirname(__FILE__) . '/Carbon.php'; use Carbon\Carbon; class Mcarbon extends Carbon {}
  4. 把它放在你的控制器中 $this->load->library ( 'Mcarbon' );
  5. 在任何函数中调用Carbon方法。例: <?php $dt =Mcarbon::createFromDate(2018,2,13,null); var_dump($dt->year); var_dump($dt->month); var_dump($dt->day); var_dump($dt->hour);

0
投票

这是Codeigniter 3的另一种方法:

  1. 使用Composer安装(我这里不解释如何安装Composer): 打开终端 转到Codeigniter项目的根文件夹并键入: composer require nesbot/carbon ^2 它应该在vendor / nestbot / Carbon文件夹中安装Carbon 2.x. 删除ˆ2以安装最新的1.x版本(撰写此答案时)
  2. 更新Codeigniter配置文件以自动加载组件: 打开application / config / config.php并更改: $config['composer_autoload'] = FALSE; 至: $config['composer_autoload'] = FCPATH.'/vendor/autoload.php';
  3. 为Carbon创建一个Codeigniter库: 创建application / libraries / Carbon_lib.php文件: <?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
    use Carbon\Carbon;
    public function __construct($time = null, $tz = null) {
      parent::__construct($time, $tz);
    }
  4. 将库加载到控制器中,型号......: $this->load->library('carbon_lib');
  5. 像使用Carbon一样使用库: $carbon = $this->carbon_lib;
    $carbon->addDay();
    //Get the SQL date and date/time format
    $carbon->toDateString();
    $carbon->toDateTimeString();
    //And to create an immutable object
    $carbonImmutable = $this->carbon_lib->toImmutable(); ...

有关详细信息,请参阅Carbon website

© www.soinside.com 2019 - 2024. All rights reserved.