A CodeIgniter4 library with convenient helper functions to render svg icons using php-icons.
Usage of CodeIgniter Icons requires the following:
- A CodeIgniter 4.3.5+ based project
- Composer for package management
- PHP 8.1+
composer require yassinedoghri/codeigniter-icons
-
init and configure PHPIcons, ie. create the PHPIcons config file.
-
add icons helper to your
app/Config/Autoload.php
file:
public $helpers = [/*...other helpers...*/, 'icons'];
Use the icon(string $iconKey, array $attributes)
helper function in your View
files to render svg icons:
<?= icon('material-symbols:bolt') ?>
// <svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 24 24">
// <path fill="currentColor" d="m8 22l1-7H4l9-13h2l-1 8h6L10 22z"/>
// </svg>
<?= icon('material-symbols:bolt', ['class' => 'text-2xl', "style" => "color: yellow;"]) ?>
// <svg class="text-2xl" style="color: yellow;" [...]>...</svg>
<?= icon('material-symbols:bolt')
->attr('class', 'text-2xl')
->attr('style', 'color: yellow;') ?>
// <svg class="text-2xl" style="color: yellow;" [...]>...</svg>
For more usage info, see php icons docs.
Checkout PHPIcons config reference to tweak things as you please.
// new file - app/Config/Icons.php
<?php
declare(strict_types=1);
namespace Config;
// ...
use CodeIgniterIcons\Config\Icons as CodeIgniterIcons;
class Icons extends CodeIgniterIcons
{
public string $phpIconsConfigPath = ROOTPATH . 'php-icons.php';
}
Code released under the MIT License.
Copyright (c) 2024-present, Yassine Doghri (@yassinedoghri).