مكتبة PHP ملائمة لعرض أيقونات svg.
احصل على إمكانية الوصول إلى أكثر من 200000 أيقونة من أكثر من 150 مجموعة أيقونات مفتوحة المصدر مباشرة من ملفات php الخاصة بك!
بفضل Iconify ❤️
composer require yassinedoghri/php-icons
قم بتشغيل الأمر التالي لتهيئة ملف التكوين:
vendor/bin/php-icons init
سيطالبك هذا بإنشاء ملف تكوين php-icons.php
في جذر مشروعك. راجع مرجع التكوين لمزيد من المعلومات.
icon(string $iconKey, array $attributes)
استخدم وظيفة icon(…)
في ملفات العرض الخاصة بك باستخدام مفتاح الأيقونة ( {prefix}:{icon}
) كمعلمة:
{prefix}
: هي بادئة مجموعة الأيقونات{name}
: هو اسم الأيقونة echo 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>
لإضافة سمات، استخدم المعلمة الثانية أو اتصل بالطرق attr()
أو attributes()
:
echo icon ( ' material-symbols:bolt ' , [
' class ' => ' text-2xl ' ,
' style ' => ' color: yellow; '
]);
// <svg class="text-2xl" style="color: yellow;" […]>…</svg>
echo icon ( ' material-symbols:bolt ' )
-> attr ( ' class ' , ' text-2xl ' )
-> attr ( ' style ' , ' color: yellow; ' );
// <svg class="text-2xl" style="color: yellow;" […]>…</svg>
echo icon ( ' material-symbols:bolt ' )
-> attributes ([
' class ' => ' text-2xl ' ,
' style ' => ' color: yellow; '
]);
// <svg class="text-2xl" style="color: yellow;" […]>…</svg>
نصيحة
ابحث عن مفاتيح الأيقونات الخاصة بمجموعات الأيقونات الشهيرة مفتوحة المصدر وانسخها من فهرس Iconify.
مهم
عند تحديد الرموز لأول مرة، سيتم عرض العنصر النائب ( �
).
تأكد من تشغيل أمر scan
لتحميل ملفات SVG.
vendor/bin/php-icons scan
سيقوم أمر scan
بإجراء تحليل ثابت لجميع ملفات PHP في المسارات التي تم تكوينها لتحديد مفاتيح الأيقونات ( {prefix}:{name}
) وتنزيل الرموز المقابلة.
استخدام معرف icon
بشكل افتراضي:
وظائف icon(…)
echo icon ( ' ri:php-fill ' ) // identified "ri:php-fill"
@icon(…)
التعليقات التوضيحية في التعليقات
// @icon('ri:heart-fill') --> identified "ri:heart-fill"
# @icon('ri:home-fill') --> identified "ri:home-fill"
/*
* @icon('ri:user-fill') --> identified "ri:user-fill"
* @icon('ri:group-fill') --> identified "ri:group-fill"
*/
يتم تحميل ملف التكوين الخاص بك بواسطة كل من أداة php-icons
CLI وفئة PHPIcons، ويجب أن يبدو كما يلي:
<?php
declare (strict_types= 1 );
use PHPIcons Config PHPIconsConfig ;
return PHPIconsConfig:: configure ()
-> withPaths ([
__DIR__ . ' /src '
])
-> withDefaultPrefix ( '' )
-> withPlaceholder ( ' � ' );
withPaths([])
قائمة المسارات إلى الملفات المصدر الخاصة بك. سيتم تحليل ملفات PHP وفحصها لاكتشاف الرموز التي حددتها.
withAPIHosts([])
مضيفات Iconify API للاستعلام عن تنزيل أيقونات svg. يبدأ بالاستعلام عن المضيف الأول، ويتم استخدام الباقي كنسخة احتياطية.
الإعدادات الافتراضية لمضيفي Iconify العامين: ["https://api.iconify.design","https://api.simplesvg.com", "https://api.unisvg.com"]
withLocalIconSets([])
إذا كانت لديك أيقونات مخصصة، فيمكن لأيقونات php البحث عنها محليًا في نظام الملفات الخاص بك بدلاً من استدعاء Iconify API.
مهم
ستبحث php-icons عن ملفات {name}.svg
في مجموعات الأيقونات المحلية لديك
يأخذ مصفوفة ترابطية مع بادئة مجموعة الأيقونات كمفتاح ومسارها كقيمة.
my-custom-set/
├── heart.svg
├── rocket.svg
├── star.svg
└── user.svg
// in your config file
-> withLocalIconSets ([
' custom ' => ' /path/to/my-custom-set ' ,
])
// ✅ ALL GOOD
echo icon ( ' custom:heart ' );
echo icon ( ' custom:rocket ' );
echo icon ( ' custom:star ' );
echo icon ( ' custom:user ' );
// ICONS NOT FOUND
echo icon ( ' custom:banana ' );
echo icon ( ' custom:key ' );
withDefaultPrefix('')
بادئة تعيين الأيقونات الافتراضية لاستخدامها عند عدم تعيين أي شيء.
مع تعيين material-symbols
كبادئة افتراضية:
// this
echo icon ( ' bolt ' );
// same as this
echo icon ( ' material-symbols:bolt ' );
withDefaultIcon()
الرمز الافتراضي الذي سيتم استخدامه عند عدم العثور على رمز.
يأخذ في رمز المفتاح {prefix}:{name}
. إذا لم يتم تعيين بادئة، فسيتم استخدام البادئة الافتراضية بدلاً من ذلك.
withDefaultIconPerSet([])
الرمز الافتراضي الذي يتم استخدامه عند عدم العثور على رمز في المجموعة.
يأخذ في مصفوفة ترابطية، حيث يكون المفتاح هو بادئة مجموعة الأيقونات، والقيمة هي الرمز الافتراضي.
withPlaceholder('�')
سلسلة لإظهارها عند عدم العثور على الأيقونة أو عدم معرفتها.
الإعدادات الافتراضية هي �
الحرف البديل).
withIdentifiers([])
أسماء الوظائف أو الطرق التي يجب مطابقتها لتحديد مفاتيح الأيقونات في ملفات المصدر الخاصة بك.
الإعدادات الافتراضية هي ['icon']
.
> vendor/bin/php-icons
_ _
_ __ | | __ _ __ (_) ___ ___ _ __ ___
| ' _ | ' _ | ' _ | |/ __/ _ | ' _ / __ |
| | _) | | | | | _) | | | (_ | (_) | | | _ _
| .__/ | _ | | _ | .__/ | _ | _ __ _ __/ | _ | | _ | ___/
| _ | | _ |
A convenient PHP library to render svg icons
----------------------------------------------
PHPIcons, version 1.0.0.0-dev
Commands:
*
init i Configure PHPIcons interactively
scan s Scans source files and loads icons
Run ` < command > --help ` for specific help
لم يكن هذا ممكنًا بدون العمل الرائع الذي قام به فريق Iconify والمصممون الذين يحافظون على العديد من مجموعات الأيقونات مفتوحة المصدر.
مستوحاة من الأيقونة الفلكية وأيقونات الشفرات ورئيس الجامعة.
تم إصدار الكود بموجب ترخيص MIT.
حقوق الطبع والنشر (ج) 2024 إلى الوقت الحاضر، ياسين الدغري (@yassinedoghri).