رشتهها در PHP
رشته، دنبالهای از یک یا چند کاراکتر است که ممکن است شامل حروف، اعداد یا نمادها باشد. تمام ارتباطات نوشتاری از رشتهها تشکیل شدهاند و به همین دلیل، رشتهها در هر زبان برنامهنویسی پایهای و اساسی هستند.
در این مقاله، شما با نحوه ایجاد و مشاهده خروجی رشتهها، استفاده از توالیهای فرار، ترکیب رشتهها، ذخیره رشتهها در متغیرها و قواعد استفاده از نقل قولها، آپاستروفها و خط جدید در رشتهها در PHP آشنا خواهید شد.
ایجاد رشته در PHP
میتوانید یک رشته را در PHP با قرار دادن دنبالهای از کاراکترها داخل کوتیشن تکی یا دوتایی ایجاد کنید. PHP رشتههای زیر را به طور متفاوتی تفسیر میکند:
قبل از خروجی، رشتههای قرار گرفته در کوتیشن دوتایی متغیرها و توالیهای فرار داخل آن را شناسایی و پردازش میکنند اما رشتههای قرار گرفته در کوتیشن تکی هر کاراکتری را دقیقاً همانطور که نوشته شده نمایش میدهند. استثنا در کوتیشن تکی، نمایش آپاستروف (‘) و بکاسلش (\) با استفاده از بکاسلش هنگام نیاز است.
اگر این رشته را در PHP با دستور echo نمایش دهید:
echo 'I\'m a developer';
خروجی به شکل زیر خواهد بود:
I’m a developer
اگر قبل از آپاستروف در رشته کوتیشن تکی، بکاسلش قرار ندهید، PHP رشته را در آن نقطه خاتمه میدهد که باعث بروز خطا خواهد شد. از آنجا که برای ایجاد رشته از کوتیشن تکی استفاده کردهاید، میتوانید درون آن از کوتیشن دوتایی به عنوان بخشی از خروجی نهایی استفاده کنید.
اگر بخواهید توالی \’ را نمایش دهید، باید از سه بکاسلش استفاده کنید (\\\’)؛ اول دو بکاسلش برای نمایش بکاسلش خود، سپس \’ برای نمایش آپاستروف. توالی \” دقیقاً همانطور که نوشته شده نمایش داده میشود.
مشابه رشته کوتیشن تکی، اگر بکاسلش قبل از کوتیشن دوتایی قرار نگیرد، PHP رشته را در آن نقطه خاتمه میدهد و خطا خواهد داد. چون رشته کوتیشن دوتایی با کوتیشن تکی خاتمه نمییابد، آپاستروف را مستقیماً میتوانید به رشته کوتیشن دوتایی اضافه کنید. همچنین، در رشته کوتیشن دوتایی، نمایش \’ با استفاده از بکاسلش تک یا دوبل امکانپذیر است.
برای خروجی گرفتن از توالی \” باید از سه بکاسلش استفاده کنید؛ دو تای اول بکاسلش را نمایش میدهند و \” دابل کوتیشن را نمایش میدهد. توالی \’ دقیقاً همانگونه که نوشته شده است، نمایش داده میشود.
توابع فرار (Escape Sequences)
کاراکتر \ به عنوان کاراکتر فرار شناخته میشود. این کاراکتر همراه با کاراکتر ثانویه تشکیل توالی فرار میدهد. در PHP توالیهای فرار به منظور متوقف کردن روند طبیعی و ارزیابی متفاوت کاراکترهای بعدی به کار میروند.
در PHP، یک توالی فرار با بکاسلش شروع میشود. توالیهای فرار بیشتر در رشتههای با کوتیشن دوتایی اعمال میشوند. رشتههای با کوتیشن تکی فقط توالی فرار آپاستروف و بکاسلش را قبول دارند.
برخی توالیهای فرار متداول در رشتههای کوتیشن دوتایی:
- \n : خط جدید
- \t : تب
- \\ : بکاسلش
- \” : کوتیشن دوتایی
- \$ : علامت دلار
برای مثال:
echo "Hello\nWorld!";
خروجی:
Hello
World!
استفاده از توالیهای فرار قادر میسازد تا هر رشتهای را با کاراکترهای خاص لازم بسازیم.
گسترش متغیرها در رشتههای کوتیشن دوتایی
ویژگی مهم رشتههای کوتیشن دوتایی در PHP این است که نام متغیرها در آنها گسترش یافته و مقدار متغیر نمایش داده میشود. میتوانید متغیر را به جای رشته مستقیم استفاده کنید یا مستقیماً رشته را داخل کوتیشن دوتایی بنویسید. خروجی رشته را با تابع echo نمایش میدهیم:
$my_name = "Sammy";
echo '$my_name'; // outputs $my_name literally
echo "$my_name"; // outputs Sammy
echo "\$my_name"; // outputs $my_name literally
وقتی رشته با کوتیشن تکی نوشته شود، متغیر به همان صورت رشتهای نمایش داده میشود ولی وقتی با کوتیشن دوتایی نوشته شود، مقدار آن جایگزین میشود مگر اینکه با بکاسلش از آن جلوگیری کنیم.
ترکیب رشتهها (Concatenation)
ترکیب یعنی اتصال رشتهها به هم جهت ساخت رشته جدید. در PHP دو روش اصلی برای ترکیب رشتهها وجود دارد.
روش اول، قراردادن متغیر رشتهای داخل رشته کوتیشن دوتایی است:
$answer = "Chews wisely.";
echo "Sammy says $answer";
در اینجا رشته و متغیر $answer به هم متصل شدهاند.
روش دوم استفاده از اپراتور نقطه (.) است:
echo "Sammy" . "Shark";
این کد رشتههای “Sammy” و “Shark” را بدون فاصله کنار هم قرار میدهد.
اگر فاصله بین دو رشته لازم باشد، باید داخل یکی از رشتهها اضافه شود:
echo "Sammy " . "Shark";
نمیتوان رشته را مستقیماً با عدد ترکیب کرد:
echo "Number: " . 27; // this will work due to type juggling
echo "Number: " . "27"; // also valid as 27 is string
PHP زبان با نوعدهی ضعیف است و سعی میکند دادههای ورودی را بر اساس نیاز تبدیل کند.
بهروزرسانی رشتهها
متغیرها در PHP قابل تغییر (mutable) هستند. میتوان مقدار متغیر رشتهای را بازنویسی یا ویرایش کرد:
$my_name = "Sammy";
echo $my_name;
$my_name = "Shark";
echo $my_name;
در این مثال مقدار $my_name ابتدا “Sammy” است و سپس بازنویسی شده است.
برای افزودن به انتهای رشته اولیه میتوان از عملگر .= استفاده کرد:
$my_name = "Sammy";
$my_name .= " Shark";
echo $my_name; // Outputs: Sammy Shark
برای افزودن به ابتدا میتوانید متغیر را بازنویسی کنید و مقدار قبلی را با اضافه کردن رشته جدید در ابتدای آن قرار دهید:
$my_name = "Shark";
$my_name = "Sammy " . $my_name;
echo $my_name; // Outputs: Sammy Shark
نکات مربوط به فاصلهگذاری (Whitespace)
PHP به فاصلهها درون رشتهها اهمیتی نمیدهد و میتوانید هر تعداد فاصله یا خط جدید داخل کوتیشن بگذارید. با این حال، مرورگرهای وب فاصلهها و خطوط جدید داخل HTML را متفاوت نمایش میدهند و برای خطوط جدید باید از تگ <br> استفاده کرد.
رعایت فاصلهبندی مرتب و منظم باعث افزایش خوانایی کد میشود. استفاده از ویرایشگرهای کد یا IDE به شما کمک میکند این قواعد را رعایت کنید.
خلاصه
- رشتهها دنبالهای از کاراکترها هستند و میتوان آنها را در PHP با کوتیشن تکی یا دوتایی ساخت.
- کوتیشن دوتایی متغیرها و توالیهای فرار را گسترش میدهد، اما کوتیشن تکی فقط برخی توالیها را میپذیرد.
- اپراتور . برای ترکیب رشتهها استفاده میشود.
- متغیرها قابل بازنویسی و الحاق به رشته هستند.
- فاصله و خطوط جدید در PHP نادیده گرفته میشوند ولی باید در HTML به شکل مناسب نمایش داده شوند.
با فهم این مفاهیم میتوانید رشتهها را در برنامههای خود به صورت موثر ایجاد، مدیریت و نمایش دهید.
از همراهی شما با پارمین کلود متشکریم.
نظرات کاربران