CodeIgniter Forums
How to load in custom library in ci4 - Printable Version

+- CodeIgniter Forums (https://forum.codeigniter.com)
+-- Forum: CodeIgniter 4 (https://forum.codeigniter.com/forumdisplay.php?fid=28)
+--- Forum: CodeIgniter 4 Support (https://forum.codeigniter.com/forumdisplay.php?fid=30)
+--- Thread: How to load in custom library in ci4 (/showthread.php?tid=74746)



How to load in custom library in ci4 - seunex - 11-01-2019

I was trying to load custom libraries in ci4 to try and implement smarty with ci4 as we do in ci3 has anyone here try and be succeeded.

If ci4 don't allow me to use smarty template engine I stuck with ci3.


RE: How to load in custom library in ci4 - InsiteFX - 11-01-2019

You should be able to load it, but it will need to be in it's own namespace.

The namespace can then be loaded into CI4 autoloader.

.app/Config/Autoload.php


RE: How to load in custom library in ci4 - seunex - 11-01-2019

(11-01-2019, 08:38 AM)InsiteFX Wrote: You should be able to load it, but it will need to be in it's own namespace.

The namespace can then be loaded into CI4 autoloader.

.app/Config/Autoload.php

I have tried to look into the Autoload.php this the library will be load in Classmao?


RE: How to load in custom library in ci4 - kilishan - 11-01-2019

Looks like Smarty is not using namespaces, so you just have to include the file. You could use the Classmap for autoloading and that should work, I think. But, since you'll know where you're storing it in your app, there's no need for that, just include the file as you would any other PHP file.

Per their crash course:

PHP Code:
include('Smarty.class.php');

// create object
$smarty = new Smarty



RE: How to load in custom library in ci4 - 5flex - 02-09-2020

https://code4.ru/docs/podklyuchaem-smarty-v-codeigniter-4.html

I wrote this instruction, but on Russian language. Try to use Google-Translate to understand my text. I believe what you understand )) Sorry for my bad English.


RE: How to load in custom library in ci4 - x1250 - 02-10-2020

PHP Code:
namespace App\Libraries;

require_once 
APPPATH.'ThirdParty/Smarty/Autoloader.php';

use \
Smarty_Autoloader;

Smarty_Autoloader::register();

use \
Smarty;

class 
Yourclass extends Smarty {





RE: How to load in custom library in ci4 - seunex - 03-01-2020

(02-10-2020, 07:27 PM)x1250 Wrote:
PHP Code:
namespace App\Libraries;

require_once 
APPPATH.'ThirdParty/Smarty/Autoloader.php';

use \
Smarty_Autoloader;

Smarty_Autoloader::register();

use \
Smarty;

class 
Yourclass extends Smarty {


May you remail bless Thank You!


RE: How to load in custom library in ci4 - 404NotFound - 04-05-2020

(11-01-2019, 02:52 AM)seunex Wrote: I was trying to load custom libraries in ci4 to try and implement smarty with ci4 as we do in ci3 has anyone here try and be succeeded.

If ci4 don't allow me to use smarty template engine I stuck with ci3.


I use firebase/php-jwt library with composer
Code:
composer require firebase/php-jwt
Note that when you use composer, your library is put in vendor folder

Then I just load it in my controller:

app/Controllers/MyController.php
PHP Code:
use Firebase\JWT\JWT;
class 
MyController extends Controller {
   public function index() {
      $key 'blablabla';
      $jwt = new JWT();
      $payload = array(
         'iss' => base_url(),
         'name' => 'Hello World'
      );
      $token $jwt->encode($payload$key);
      echo $token;
   }



It's working for me, I hope it helps others too.
It's better in my point of view

   


RE: How to load in custom library in ci4 - laynebay - 07-29-2020

(02-09-2020, 10:04 AM)5flex Wrote: https://code4.ru/docs/podklyuchaem-smarty-v-codeigniter-4.html

I wrote this instruction, but on Russian language. Try to use Google-Translate to understand my text. I believe what you understand )) Sorry for my bad English.

Very grateful you shared this. Thanks to Google Translate, I was able to successfully convert an old CI3 library to use with CI4 (Uuid).

Your English is way better than my Russian, so again, thanks so much for sharing. I learned a lot about namespaces and classmaps doing this.

Cheers