PHP EOF (heredoc) هي طريقة لتعريف سلسلة في أصداف سطر الأوامر (مثل sh وcsh وksh وbash وPowerShell وzsh) ولغات البرمجة (مثل Perl وPHP وPython وRuby). .
نظرة عامة على الاستخدام:
1. يجب أن تكون متبوعة بفاصلة منقوطة، وإلا ستفشل عملية التحويل البرمجي.
2. يمكن استبدال EOF بأي حرف آخر، طالما أن معرف النهاية متوافق مع معرف البداية.
3. يجب أن تشغل علامة النهاية سطرًا خاصًا بها في أعلى السطر (أي يجب أن تبدأ من بداية السطر، ولا يمكن ربطها بأي مسافات أو أحرف فارغة قبلها وبعدها).
4. يمكن أن يكون معرف البداية بدون علامات اقتباس أو علامات اقتباس مفردة أو مزدوجة، وبدون علامات الاقتباس، سيكون التأثير هو نفسه كما هو الحال مع علامات الاقتباس المزدوجة. لن يتم تفسير المتغيرات المضمنة ورموز الهروب تفسير.
5. عندما يتطلب المحتوى علامات اقتباس مضمنة (علامات الاقتباس المفردة أو علامات الاقتباس المزدوجة)، ليست هناك حاجة لإضافة أحرف هروب. يتم هروب علامات الاقتباس المفردة والمزدوجة من تلقاء نفسها. وهذا يعادل استخدام q و qq.
<?php صدى <<<EOF <h1>عنواني الأول</h1> <p>فقرتي الأولى. </p> EOF; // يجب أن تكون النهاية على سطر منفصل ولا يمكن أن تكون هناك مسافات قبلها وبعدها ?>
يلاحظ:
1. ابدأ بعلامة البداية <<<EOF
وانتهي بعلامة النهاية EOF
. يجب كتابة علامة النهاية في الأعلى، بدون مسافة بادئة أو مسافات، ويجب أن تكون هناك فاصلة منقوطة في نهاية علامة النهاية.
2. علامة البداية وعلامة النهاية متماثلتان، على سبيل المثال، يتم استخدام EOT、EOD、EOF
بشكل شائع لتمثيلهما، ولكنها لا تقتصر على ذلك (يمكنك أيضًا استخدام: JSON وHTML وما إلى ذلك). ، طالما أن علامة البداية وعلامة النهاية لا تظهران في النص.
3. يمكن تحليل المتغيرات الموجودة بين علامة البداية وعلامة النهاية بشكل طبيعي، لكن لا يمكن تحليل الوظائف. في Heredoc، لا يلزم ربط المتغيرات بالموصلات ,
.
يلي:
<?php $name = " codercto " ; $a = <<<EOF "abc" $name "123" EOF; // يجب أن تكون النهاية على سطر منفصل ولا يمكن أن تكون هناك مسافات قبلها وبعدها صدى $ا ? >