رشته (String) دنبالهای از یک یا چند کاراکتر است که میتواند شامل حروف، اعداد یا نمادها باشد. تمامی ارتباطات نوشتاری از رشتهها تشکیل شدهاند، بنابراین رشتهها در هر زبان برنامهنویسی بسیار مهم و اساسی هستند.
در این مقاله، نحوه ایجاد و مشاهده خروجی رشتهها، استفاده از دستورها فرار (Escape Sequences)، نحوه ترکیب رشتهها، ذخیره رشتهها در متغیرها، و قوانین استفاده از نقلقول، اپوستروف و خطوط جدید در رشتههای PHP را یاد خواهید گرفت.
ایجاد رشته در PHP
برای ایجاد رشته در PHP کافی است کاراکترها را داخل نقلقول تک (‘ ‘) یا نقلقول دوتایی (” “) قرار دهید. PHP این دو نوع رشته را متفاوت تفسیر میکند:
- قبل از نمایش خروجی، رشتههای با نقلقول دوتایی متغیرها و دستورهای فرار را درون رشته ارزیابی و تفسیر میکنند.
- رشتههای با نقلقول تک دقیقاً همان چیزی که نوشتهاید را بدون تغییر نمایش میدهند؛ به جز مواردی مانند خود نقلقول تک و بکاسلش که نیازمند اسکیپ کردن هستند.
اگر رشته زیر را در PHP echo کنید:
echo 'It\'s a "good" plan.';
خروجی:
It's a "good" plan.
اگر علامت اسلش قبل از اپوستروف را نگذارید، PHP رشته را زود پایان میدهد و با ارور مواجه میشوید. در رشتههای با نقلقول تک میتوانید داخل رشته از نقلقول دوتایی استفاده کنید تا در خروجی دیده شوند.
اگر بخواهید دنباله \’ را نمایش دهید، باید از سه بکاسلش (\\\’) استفاده کنید: ابتدا \\ برای نمایش بکاسلش، سپس \’ برای نمایش اپوستروف. دنباله \” همانطور که هست نمایش داده میشود.
در رشته با نقلقول دوتایی نیز اگر بکاسلش قبل از نقلقول دوتایی نباشد رشته به پایان میرسد و خطا دریافت میکنید. چون رشته با نقلقول دوتایی شروع شده، میتوانید به راحتی اپوستروف را اضافه کنید. دنباله \’ با یک یا دو بکاسلش همراه با اپوستروف نمایش داده میشود.
برای نمایش دنباله \” باید از سه بکاسلش استفاده کنید: ابتدا \\ برای نمایش بکاسلش، سپس \” برای نمایش نقلقول دوتایی. دنباله \’ همانطور که هست نمایش داده میشود.
علامت \ به عنوان دستور فرار شناخته میشود و در ترکیب با کاراکتر دوم، دستور فرار تشکیل میدهد.
دستورهای فرار در رشتهها
دستور فرار escape sequence به برنامه دستور میدهد تا کاراکترهای بعدی را به شیوهای متفاوت تفسیر کند. در PHP، دستورهای فرار با بکاسلش \ شروع میشوند. این دستورها عمدتا برای رشتههای با نقلقول دوتایی قابل استفادهاند؛ در حالی که رشتههای با نقلقول تک فقط برای اپوستروف و بکاسلش امکان استفاده از مورد فرار را دارند.
نمونهای از رایجترین دستورهای فرار در رشتههای با نقلقول دوتایی:
- \n : خط جدید
- \t : تب
- \$ : نمایش علامت دلار
- \” : نمایش نقلقول دوتایی
- \\ : نمایش بکاسلش
مثال:
echo "Sammy said, \"Chews wisely.\" \n";
استفاده از دستورهای فرار این امکان را ایجاد میکند تا هر رشتهای با کاراکترهای خاص ساخته شود.
متغیرها در رشتههای PHP
مهمترین ویژگی رشتهها با نقلقول دوتایی این است که نام متغیرها را گسترش میدهند و مقدار متغیر نمایش داده میشود. میتوانید هم مستقیماً رشته را استفاده کنید و هم متغیر. برای نمایش رشته تابع echo را فراخوانی کنید:
$my_name = "Sammy"; echo '$my_name is my name.'; // نمایش نام متغیر به صورت خام echo "$my_name is my name."; echo "This is a \$my_name variable.";
در مثال بالا، مقدار متغیر $my_name در رشته با نقلقول تک به صورت اسم متغیر همچنان نمایش داده میشود ولی در رشته با نقلقول دوتایی مقدار آن دیده میشود. همچنین برای نمایش علامت دلار بدون گسترش متغیر میتوان قبلش بکاسلش گذاشت.
هنگامی که گسترش متغیر مهم نیست، میتوانید آزادانه از هرکدام از نقلقولها استفاده کنید، فقط بهتر است طبق یک استاندارد در کل برنامه پیش بروید. رشته با نقلقول تک کمی سریعتر اجرا میشود.
ترکیب رشتهها یا Concatenation
ترکیب رشتهها یعنی چسباندن چند رشته به هم برای ساخت یک رشته جدید. دو روش عمده برای ترکیب رشتهها در PHP وجود دارد:
- استفاده از متغیر داخل رشته با نقلقول دوتایی:
$answer = "Chews wisely."; echo "Sammy said, \"$answer\"";
- استفاده از عملگر
.برای ترکیب:
echo "Sammy" . "Shark";
این کد دو رشته “Sammy” و “Shark” را بدون فاصله ترکیب میکند. اگر بخواهید فاصله قرار دهید باید فاصله را بخشی از رشته بنویسید:
echo "Sammy " . "Shark";
نمیتوان عدد را مستقیماً با رشته ترکیب کرد:
echo "Sammy" . 27; // خطا ایجاد میکند
اما اگر عدد را داخل رشته قرار دهید، ترکیب انجام میشود:
echo "Sammy" . "27";
از آنجا که PHP زبان نوع ضعیف محسوب میشود، اگر متغیری با مقدار عددی داشته باشید و آن را با رشته ترکیب کنید، PHP مقدار را به رشته تبدیل میکند:
$number = 27; echo "Sammy" . $number;
ویرایش و بروزرسانی رشتهها
در PHP متغیرهای معمولی قابل تغییر هستند، یعنی میتوان مقدارشان را ویرایش یا جایگزین کرد. مثال:
$my_name = "Sammy"; echo $my_name; $my_name = "Shark"; echo $my_name;
در مثال بالا، ابتدا مقدار “Sammy” نمایش داده میشود و بعد از تغییر مقدار متغیر، “Shark” نمایش داده خواهد شد.
اگر بخواهید به انتهای رشته مقدار اضافه کنید، میتوانید از عملگر .= استفاده کنید:
$my_name = "Sammy"; $my_name .= " Shark"; echo $my_name;
برای اضافه کردن مقدار به ابتدای رشته باید رشته جدید را با مقدار قبلی ترکیب کنید:
$my_name = "Shark"; $my_name = "Sammy " . $my_name; echo $my_name;
مدیریت فاصله و خطوط جدید
در PHP، به فاصلههای اضافی یا خطوط جدید اهمیت داده نمیشود و میتوانید به هر تعداد فاصله و خط جدید داخل رشته داشته باشید. اما HTML فضای سفید را متفاوت نمایش میدهد؛ برای خطوط جدید باید از تگ <br> استفاده کنید.
خوانا و تمیز نگهداشتن کد یکی از بهترین راهها برای کدنویسی حرفهای است، چون PHP به فضای سفید حساسیتی ندارد، در ساختاردهی کدها آزادی عمل دارید. استفاده از محیط توسعه مجتمع (IDE) کمک میکند تا ساختار و فاصله در کدهایتان همیشه یکسان باشد.
جمعبندی
کنترل نحوه نمایش رشتهها برای ارتباط با کاربر نهایی یک برنامه حیاتی است. با بروزرسانی و ترکیب متغیرها و اضافه کردن کاراکترهای خاص، میتوانید ارتباطی واضح بدون تکرار اضافی ایجاد کنید.
برای مطالعه بیشتر درباره PHP، به صفحه موضوعات PHP پارمین کلود مراجعه کنید.
از اینکه با پارمین کلود همراهید، متشکریم.
نظرات کاربران