ایجاد خط جدید در php برای کوتاه کردن طول خط و همچنین افزایش خوانایی هر تکه از متن که در یک خط نوشته شده است ، به کار می رود . php رفتن به سطر جدید را با استفاده از کاراکتر های CRLF و ثابت ها (Constant) برایمان فراهم کرده است . که در لیست زیر به آن اشاره کردیم .
- Linefeed (\n) – این یکی از کاراکترهای CRLF برای رفتن به خط جدید در php است که معادل enter است .
- PHP_EOL : این ثابت از پیش تعریف شده برای پایان دادن به یک خط در هنگام استفاده از توابع چاپی مثل echo یا print است .
نکته : این دو کاراکتر برای رفتن به خط جدید در php فقط وقتی که در بین دابل کئت (“) باشند ، نتیجه دلخواه را به ما نشان می دهند . اگر هر یک از کاراکترهای بالا را در بین سینگل کئت (‘) قرار دهید ، باید رفتن به سطر جدید را با کلید enter مشخص کنیم . برای مثال ،
1 2 3 |
$content = 'PHP line breaks added by escape sequence working fine'; |
اما ، داخل single quote ها ، ما فقط می توانیم از داده های استاتیک استفاده کنیم . اگر قصد استفاده از یک متغییر را داشته باشیم ، باید از ” استفاده کنیم .
مثال رفتن به خط جدید در php با Line Breaks
اسکریپت php زیر به شما نحوه رفتن به خط جدید در php را با استفاده از \n و PHP_EOL نمایش می دهیم .
1 2 3 4 |
$content = "PHP line breaks\nadded by escape sequence\nworking fine"; //OR $content = "PHP line breaks" . PHP_EOL . "added by escape sequence" . PHP_EOL . "working fine"; echo $content; |
در کد php بالا ، همانطور که می بینید ، \n بدون استفاده از . برای جدا کردن رشته از هم استفاده شده است ، درحالی که PHP_EOL را با استفاده از نقطه (.( جدا کردیم تا به عنوان یک ثابت (Constant) از پیش تعریف شده php شناحته شود نه یک رشته .!
دلیل استفاده از تابع nl2br()
زمانی که از کد بالا برای ایجاد خط جدید در php استفاده می کنیم ، در مرورگر نمی توانیم ببینیم که یک کاراکتر خط جدید برای هر سطر اضافه شده باشد . اما زمانی که محتوا را داخل یک فایل یا دیتابیس ذخیره کنیم ، کاراکتر های خط جدید را می توانیم مشاهده کنیم .
اگر بخواهیم line breaks ها را در خروجی مرورگر همانند فایل یا دیتابیس مشاهده کنیم ، نیاز داریم که کاراکتر های خط جدید در php را به کاراکتر استاندارد رفتن به خط جدید در html که <br> است ، تبدیل کنیم . php یک تابع از پیش تعریف شده (inbuilt function) به اسم nl2br() که برای تبدیل خط جدید تولید شده توسط php به یک کد html ، معرفی کرده است .
این تابع فقط یک آرگومان برای دریافت ورودی ای که در آن به جستجور خط جدید بپردازد و آن را به یک کد html تبدیل کنید ، نیاز دارد . برای مثال متغییر $content که اطلاعات شامل line breaks ها را دارد مانند کد php زیر به تابع پاس می دهیم .
1 2 3 4 5 |
$content = "PHP line breaks\nadded by escape sequence\nworking fine"; //OR $content = "PHP line breaks" . PHP_EOL . "added by escape sequence" . PHP_EOL . "working fine"; $content = nl2br($content); echo $content; |
همانطور که در کد بالا دیدید ، قبل از چاپ $content در مروگر ، آن را به عنوان ورودی تابع nl2br() تعریف کردیم تا کاراکتر خط جدید در خروجی مرورگر قابل نمایش باشید
هرگونه مشکلی در پیاده سازی کد ها داشتید از قسمت نظرات ارسال کنید . سریعا پاسخگوی سوالات شما هستیم .
موفق و پیروز باشید .