【问题标题】:combine codeigniter and laravel结合 codeigniter 和 laravel
【发布时间】:2021-09-20 16:01:18
【问题描述】:

我正在使用codeigniter 框架,但我想使用laravel 框架的功能,例如下面的代码,我可以在没有<?php echo $name ?> 的情况下打印变量:

Hello {{ $name }}

我该怎么办?

【问题讨论】:

    标签: php laravel codeigniter blade


    【解决方案1】:

    Codeigniter 是一个 PHP 框架。 Laravel 也是 php 框架。而这两者并不相等。就这么简单

    Codeigniter(<4.0) != Laravel
    

    Take look at Laravel vs. CodeIgniter

    Laravel 与 Codeigniter

        Module               Laravel                Codeigniter
    ----------------------------------------------------------
    Layout Control              Yes                         No
    ORM                         Yes                         No
    Error Stack Trace           Yes                         No
    Class Auto Loading          Yes                         Yes
    –Database mySQL             Yes                         Yes
    –Database SQLite            Yes                         Yes
    –Database MSSQL             Yes                         Yes
    –Database PostgreSQL        Yes                         Yes
    –Database Cubrid            Yes                         Yes
    –ODBC drivers               Yes                         No
    –Database MariaDB           No                          No
    Authentication Library      Yes                         No
    External Modules            Yes                         Yes
    Form Validation Rules       Yes                         Yes
    Internationalization        Yes                         Yes
    Database Module             Object-oriented             Hybrid Object-relational
    Template language           Blade Template Engine       Blade php Proprietary
    Design pattern              Active-Record               Active-Record
                                Model-View-Controller       Model-View-Controller
                                Dependency injection
                                Observer
                                Singleton
                                Event-Driven
                                MTV
                                Factory
                                RESTfull
                                Facade
    

    所以一些开源库可以与这两个框架一起使用,但不是全部(phpMailer,phpExcel..)

    【讨论】:

    • @Drudge Codeigniter 没有功能调用 ORM。当您使用 symfony 或 laravel 时,您可以识别差异。
    • @Abdulla 你用的是哪一个?
    • @S.M_Emamian 我知道使用 CI 编码有点困难。但可以学到比你想象的更多的东西。
    • @S.M_Emamian 很乐意为您提供帮助 :)
    • Codeigniter 从 3.X 开始支持捆绑包,因为它可以与 composer 一起使用,使用 composer 你可以下载捆绑包。
    【解决方案2】:

    是的!你可以使用刀片模板引擎并使用一些 laravel 语法 {{$Data}} 像这样.....

    1 允许供应商 2 安装刀片包 3 使用它

    【讨论】:

    • 欢迎来到 SO!请更具体地回答。
    【解决方案3】:

    您可以将BladeView 库用于 CI。

    class Welcome extends CI_Controller {
      public function __construct() {
        parent::__construct();
        $this->load->library("bladeview");
      }
    
     public function renderView(){
        $data=array(
                "name"=>"Jhon",
                "age"=>21
            );
        $this->bladeview->render("test", $data);
     }
    
     public function renderString(){
        $data=array(
                "name"=>"Jhon",
                "age"=>21
            );
        $string="Hello I'm \{{$name}}. My age is \{{$age}}";
        $this->bladeview->render($string, $data,false);
      }
    }
    

    然后在 view.blade.php 中你可以像在 laravel Blade 中一样渲染。

    Hello my name is {{$name}}. My Age is {{$age}}.
    

    输出:

    Hello my name is Jhon. My Age is 21.
    

    【讨论】:

      猜你喜欢
      • 2013-01-18
      • 2023-03-23
      • 2015-07-20
      • 2015-12-10
      • 1970-01-01
      • 2015-07-08
      • 1970-01-01
      • 2015-02-22
      • 1970-01-01
      相关资源
      最近更新 更多