الفرق بين المراجعتين لصفحة: «Twig/intro»

من موسوعة حسوب
طلا ملخص تعديل
طلا ملخص تعديل
 
(3 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
<noinclude>{{DISPLAYTITLE:مقدمة عن Twig}}</noinclude>
<noinclude>{{DISPLAYTITLE:مقدمة عن Twig}}</noinclude>
مرحبًا بك في توثيق محرك القوالب Twig، المحرك المرن السريع الآمن للغة PHP، هذا المحرك مصمم ليناسب المصممين والمطورين على حد سواء بالتزامه بمبادئ لغة PHP وإضافة وظائف مفيدة وعملية لبيئات القولبة، وهذه المزايا هي:
مرحبًا بك في توثيق محرك القوالب Twig، المحرك المرن السريع الآمن للغة [[PHP]]، هذا المحرك مصمم ليناسب المصممين والمطورين على حد سواء بالتزامه بمبادئ لغة PHP وإضافة وظائف مفيدة وعملية لبيئات القولبة، وهذه المزايا هي:


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


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


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


== استخدام واجهة برمجة التطبيقات (API) الأساسي ==
== استخدام واجهة برمجة التطبيقات API الأساسية ==
هذا القسم يعطيك نبذة مختصرة عن واجهة برمجة التطبيقات في لغة PHP لمحرك Twig:<syntaxhighlight lang="twig">
هذا القسم يعطيك نبذة مختصرة عن واجهة برمجة التطبيقات في لغة PHP لمحرك Twig:<syntaxhighlight lang="php">
require_once '/path/to/vendor/autoload.php';
require_once '/path/to/vendor/autoload.php';


سطر 21: سطر 21:


echo $twig->render('index', ['name' => 'Fabien']);
echo $twig->render('index', ['name' => 'Fabien']);
</syntaxhighlight>يستخدم Twig محمِّل (<code>‎\Twig\Loader\ArrayLoader</code>) من أجل العثور على القوالب، وبيئةً (<code>‎\Twig\Environment</code>) من أجل تخزين إعداداتها. ويحمِّل التابع <code>render()‎</code> القالب المُمرَّر كوسيط أول، ويخرجه مع المتغيرات الممررة كوسيط ثاني. وبما أن القوالب تُخزَّن في نظام الملفات (filesystem) فإن Twig يأتي بمحمل نظام ملفات أيضًا:<syntaxhighlight lang="twig">
</syntaxhighlight>يستخدم Twig محمِّل <code>‎\Twig\Loader\ArrayLoader</code> من أجل العثور على القوالب، وبيئةً <code>‎\Twig\Environment</code> من أجل تخزين إعداداتها. ويحمِّل التابع <code>render()‎</code> القالب المُمرَّر كوسيط أول، ويخرجه مع المتغيرات الممررة كوسيط ثاني. وبما أن القوالب تُخزَّن في نظام الملفات filesystem فإن Twig يأتي بمحمل نظام ملفات أيضًا:<syntaxhighlight lang="php">
$loader = new \Twig\Loader\FilesystemLoader('/path/to/templates');
$loader = new \Twig\Loader\FilesystemLoader('/path/to/templates');
$twig = new \Twig\Environment($loader, [
$twig = new \Twig\Environment($loader, [
سطر 37: سطر 37:
== مصادر ==
== مصادر ==


* [https://twig.symfony.com/doc/3.x/intro.html صفحة Introduction من توثيق Twig الرسمي].
* [https://twig.symfony.com/doc/3.x/intro.html صفحة Introduction من توثيق Twig الرسمي]
* [https://twig.symfony.com/doc/3.x/installation.html صفحة Installation من توثيق Twig الرسمي].
* [https://twig.symfony.com/doc/3.x/installation.html صفحة Installation من توثيق Twig الرسمي]
[[تصنيف:Twig]]
[[تصنيف:Twig Intro]]

المراجعة الحالية بتاريخ 10:54، 7 أكتوبر 2022

مرحبًا بك في توثيق محرك القوالب 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"

مصادر