سؤال

ما الفرق بين و (أعلم أن له علاقة بنظام التشغيل)، وما هي أفضل طريقة لتكرار فاصل الأسطر الذي سيعمل عبر الأنظمة الأساسية؟

يحرر: ردًا على Jarod، سأستخدم ths لتكرار فاصل الأسطر في ملف سجل .txt، على الرغم من أنني متأكد من أنني سأستخدمه في المستقبل لأشياء مثل تكرار HTML makup على الصفحة.

هل كانت مفيدة؟

المحلول

  • \n هو فاصل أسطر Linux/Unix.
  • \r هو فاصل أسطر كلاسيكي لنظام التشغيل Mac OS (غير OS X).يستخدم نظام التشغيل Mac OS X نظام التشغيل Unix المذكور أعلاه \n.
  • \r\n هو فاصل أسطر Windows.

أنا عادة مجرد استخدام \n في أنظمة Linux الخاصة بنا ومعظم تطبيقات Windows تتعامل معها بشكل جيد على أي حال.

نصائح أخرى

استخدم ثابت PHP_EOL، وهو يحدد تلقائيا إلى كسر خط الصحيح لنظام التشغيل الذي النصي PHP يعمل على.

لاحظ أن يعلن هذا الثابت منذ PHP 5.0.2.

<?php
    echo "Line 1" . PHP_EOL . "Line 2";
?>

لالتوافق:

if (!defined('PHP_EOL')) {
    switch (strtoupper(substr(PHP_OS, 0, 3))) {
        // Windows
        case 'WIN':
            define('PHP_EOL', "\r\n");
            break;

        // Mac
        case 'DAR':
            define('PHP_EOL', "\r");
            break;

        // Unix
        default:
            define('PHP_EOL', "\n");
    }
}

تحتوي إجابة جارود على الاستخدام الصحيح لـ على أنظمة تشغيل مختلفة.وهنا بعض التاريخ:

  • ، أو حرف ASCII ذو الرمز العشري 13، يُسمى CR بعد "سطر الإرجاع".
  • ، أو حرف ASCII بالرمز العشري 10، يُسمى "السطر الجديد"، أو LF بعد "تغذية السطر".

يعود تاريخ المصطلحين "أحرف الإرجاع" و"تغذية الأسطر" إلى الوقت الذي تم فيه استخدام أجهزة المبرقة بدلاً من المحطات الطرفية المزودة بالشاشة ولوحة المفاتيح.فيما يتعلق بالآلات الكاتبة أو الآلات الكاتبة، فإن "سطر الإرجاع" يعني تحريك المؤشر والعودة إلى العمود الأول من النص، في حين أن "تغذية السطر" تعني تدوير الأسطوانة للوصول إلى السطر التالي.في ذلك الوقت كان التمييز منطقيًا.اليوم أصبحت المجموعات ، ، التي تمثل نهاية سطر من النص عشوائية تمامًا.

ولا التوافق اللازم لPHP_EOL على PHP4.

وتحتاج لتصحيح بيان مور على توفر PHP_EOL ثابت: "... أعلن منذ PHP 5.0.2"

لا، فقد كان حولها منذ PHP 4.3.10. أي شخص لا يزال قيد أي شيء أقل من ذلك لا ينبغي أن يكون في عالم المال على أية حال. اعتبارا من اليوم لا ينبغي لأحد أن يستخدم أي شيء أقل من 5 PHP!

من دليل PHP: "PHP_EOL و" نهاية الخط "الصحيح رمز لهذا النظام الأساسي . متوفر منذ PHP 4.3.10 وPHP 5.0.2 ".

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top