در قسمت قبلی از این سری آموزشی با متغیر ها و استرینگ ها در PHP آشنا شدیم. در این قسمت با مثال هایی در پی اچ پی شما را با مقدار دهی اولیه و ثانویه به متغیر ها و اولویت ها در مقداردهی آشنا می کنیم.
اگر این مقاله اولین قسمت از مجموعه آموزش مقدماتی زبان پی اچ پی است که می بینید، پیشنهاد می کنم از اولین قسمت آموزش مقدماتی PHP شروع به خواندن کنید.
در PHP ، نام متغیرها می توانند حاوی اعداد، حروف و آندرلاین ها باشند (_)، اما باید بدانید که نام متغیر نمی تواند با یک عدد آغاز شود. باید با یک حرف یا آندرلاین نام متغیر را شروع کنید. نام متغیرها به حروف کوچک و بزرگ حساس هستند، به این معنی که در زبان PHP متغیرهای $Example و $example به عنوان دو متغیر متفاوت در نظر گرفته می شوند.
هنگام استفاده از متغیرهای PHP، عرف معمول نام گذاری متغیر ها، استفاده از (_) در بین کلمات نام متغیرهایی با بیش از یک کلمه است. این نوع نام گذاری به عنوان "مار" شناخته می شود:
$mood = “:) “;
$favorite_food = “Red curry with eggplant”;
هنگامی که یک متغیر را نام گذاری کردیم یا در واقع آن را اعلام کردیم و مقداری را به آن اختصاص دادیم، می توانیم هر چند بار که می خواهیم و هرجایی که لازم است از آن استفاده کنیم. ما با استفاده از علامت دلار و به دنبال آن نام متغیر به یک متغیر که قبلا تعریف کردیم مراجعه می کنیم.
به طور مثال در بالا متغیر $favorite_food را تعریف کردیم. در هر جای برنامه که بخواهیم از مقدار این متغیر استفاده کنیم به راحتی می توانیم آن را فراخوانی کنیم. برای چاپ مقدار این متغیر می توانید دستور زیر را ببینید:
echo $favorite_food;
با نوشتن این دستور مقدار این متغیر یعنی: Red curry with eggplant چاپ می شود.
به طور خلاصه می توان گفت به جز هنگام مقداردهی به متغیر، هر زمانی که سیستم متغیری را در کد شما مشاهده می کند، مقدار اختصاص داده شده به آن متغیر را جایگزین می کند.
$dog_name = "Tadpole"
echo $dog_name;
مقدار چاپ شده: Tadpole
از آنجایی که کامپیوتر با یک متغیر طوری رفتار می کند که انگار فایلی است که در آن مقداری نگه داشته می شود، ما هم می توانیم هنگام کار با متغیرها درست همین رفتار را داشته باشیم.
$dog_name = "Tadpole"
echo "My dog is named " . $dog_name;
// Prints: My dog is named Tadpole
در کد بالا، رشته My dog is namedرا به مقداری که متغیر $dog_name نگه داشته است پیوند دادیم. بیایید به مثال دیگری نگاه کنیم که از چندین متغیر که به هم پیوند داده شده اند استفاده می کند:
$dog_name = "Tadpole"
$favorite_food = "salmon"
$color = "brown"
echo "I have a " . $color . " dog named " . $dog_name . " and her favorite food is " . $favorite_food . "."
// Prints: I have a brown dog named Tadpole and her favorite food is salmon
در این مثال، ما دیدیم که اتصال رشته های مختلف و متغیرهای رشته چگونه انجام می شود. اما راه ساده تری هم برای این کار وجود دارد!
رشته های PHP به ما این امکان را می دهد که متغیرها را مستقیماً در رشته های دو نقل شده قرار دهیم. سیستم شما متغیرها را با عنوان مقداری که نگه می دارند، می خواند. بنابراین متغیرها به عنوان مقدار آنها دیده می شوند. به این مثال توجه کنید تا درک بهتری از این موضوع پیدا کنید:
$dog_name = "Tadpole"
$favorite_food = "salmon"
$color = "brown"
echo "I have a $color dog named $dog_name and her favorite food is $favorite_food."
// Prints: I have a brown dog named Tadpole and her favorite food is salmon.
تجزیه رشته PHP فوق العاده مفید است. هروقت در زبان PHP علامت دلار ($) را در داخل یک رشته مشاهده شود، تمام کاراکترهای موجود در کنار آن جزئی از متغیر فرض می شود، تا زمانی که سیستم به کاراکتری برسد که نتواند عضوی از نام متغیر باشد.
اما گاهی ممکن است این نوع شناخت متغیرها برای ما مشکل ساز شود. چه اتفاقی می افتد اگر بخواهیم به مقداری که در متغیر ما قرار گرفته کاراکترهایی اضافه کنیم؟ برای درک بهتر به این مثال توجه کنید:
$toy = "frisbee"
echo "Alex likes playing with $toys"
دستور بالا با ارور مواجه می شود، زیرا ما متغیر $toy را تعریف کرده ایم اما در جمله نوشته شده می خواهیم از اسم جمع آن استفاده کنیم. برای رفع این مشکل PHP به ما اجازه می دهد تا نام متغیر را با قرار دادن آن در آکولاد مشخصاً نشان دهیم تا سیستم در تشخیص نام متغیر سردرگم نشود.
بنابراین وقتی می خواهید که به مقدار داخل متغیر کاراکتری اضافه کنید می توانید از این قابلیت استفاده کرده و مانند این مثال عمل کنید:
$dog_name = "Tadpole"
$favorite_food = "treat"
$color = "brown"
echo "I have a ${color}ish dog named $dog_name and her favorite food is ${favorite_food}s."
// Prints: I have a brownish dog named Tadpole and her favorite food is treats.
کلمه متغیر از کلمه لاتین variāre آمده است که به معنی "تغییر پذیر شدن" است. این نام کاملا مناسب عملکرد متغیر است. زیرا مقدار اختصاص داده شده به یک متغیر می تواند تغییر کند.
فرآیند اختصاص یک مقدار جدید به یک متغیر، تغییر کاربری نامیده می شود. ما متغیری را که قبلاً تعریف کرده ایم با استفاده از عملگر انتساب مجدداً تعریف می کنیم:
$favorite_food = "Red curry with eggplant"
echo $favorite_food; // Prints: Red curry with eggplant
// Reassign the value of $favorite_food to a new string
$favorite_food = "Pizza"
echo $favorite_food; // Prints: Pizza
معمولا ایجاد متغیرهای جدید که به همان متغیر موجود اختصاص می شوند بسیار کاربردی است:
$first_player_rank = "Beginner"
$second_player_rank = $first_player_rank;
در کد بالا، متغیر first_player_rank$ را اعلام کردیم و رشتهBeginner را به آن اختصاص دادیم. سپس متغیر second_player_rank$ را اعلام کردیم و آن را به first_player_rank$ اختصاص دادیم.
با این کار متغیر جدیدی ایجاد کردیم که مقدار متغیر اولیه را گرفته است. توجه کنید که می توان با متغیرها بسته به جایی که در کد ظاهر می شوند، رفتار متفاوتی داشت.
در ادامه این آموزش بیشتر با متغیرها و نوع رفتارهای متفاوتی که می توان با آنها داشت آشنا می شویم. در قسمت بعدی آموزش مقدماتی PHP با عدد ها و کار با عددها در این زبان برنامه نویسی آشنا خواهیم شد.