مقدمة عن Twig

من موسوعة حسوب
اذهب إلى التنقل اذهب إلى البحث

مرحبًا بك في توثيق محرك القوالب Twig، المحرك المرن السريع الآمن للغة PHP، هذا المحرك مصمم ليناسب المصممين والمطورين على حد سواء بالتزامه بمبادئ لغة PHP وإضافة وظائف مفيدة وعملية لبيئات القولبة، وهذه المزايا هي:

  • السرعة: يصرِّف Compiles محرك Twig القوالب لتكون شيفرة PHP بسيطة ومحسنة، وقد قل سقف تلك الشيفرات إلى الحد الأدنى موازنة بشيفرة PHP العادية.
  • الأمان: يحتوي Twig على وضع صندوق الاختبار Sandbox من أجل تقييم شيفرات القوالب غير الموثوق بها، وهذا يسمح لـ Twig أن يُستخدم كلغة قوالب للتطبيقات التي قد يعدِّل المستخدمون فيها تصميم القالب نفسه.
  • المرونة: يقوم Twig على معجم lexer ومحلل parser يتسمان بالمرونة، وهذا يسمح للمطور أن يعرف وسومه وفلاتره الخاصة، وينشئ لغة DSL خاصة به.

يُستخدم Twig في الكثير من المشاريع مفتوحة المصدر مثل Symfony و Drupal8 و eZPublish و phpBB و Matomo و OroCRM، كما تدعمه كثير من أطر العمل frameworks مثل Slim و Yii و Laravel و Codeigniter، على سبيل المثال لا الحصر.

شروط التثبيت

يتطلب الإصدار الثالث من Twig فما بعده إصدار 7.2.5 من لغة PHP على الأقل كي يعمل.

استخدام واجهة برمجة التطبيقات API الأساسية

هذا القسم يعطيك نبذة مختصرة عن واجهة برمجة التطبيقات في لغة PHP لمحرك Twig:

require_once '/path/to/vendor/autoload.php';

$loader = new \Twig\Loader\ArrayLoader([
    'index' => 'Hello {{ name }}!',
]);
$twig = new \Twig\Environment($loader);

echo $twig->render('index', ['name' => 'Fabien']);

يستخدم Twig محمِّل ‎\Twig\Loader\ArrayLoader من أجل العثور على القوالب، وبيئةً ‎\Twig\Environment من أجل تخزين إعداداتها. ويحمِّل التابع render()‎ القالب المُمرَّر كوسيط أول، ويخرجه مع المتغيرات الممررة كوسيط ثاني. وبما أن القوالب تُخزَّن في نظام الملفات filesystem فإن Twig يأتي بمحمل نظام ملفات أيضًا:

$loader = new \Twig\Loader\FilesystemLoader('/path/to/templates');
$twig = new \Twig\Environment($loader, [
    'cache' => '/path/to/compilation_cache',
]);

echo $twig->render('index.html', ['name' => 'Fabien']);

التثبيت

ثبت Composer وشغل الأمر التالي في الطرفية من أجل الحصول على الإصدار الأخير:

composer require "twig/twig:^3.0"

مصادر