parsgreen.com
article

آشنایی و کار با متغیر ها (Variables) در php

php-variables

در بحث پیشین از بخش آموزش مقدماتی php با کلیاتی از این زبان برنامه نویسی آشنا شدیم، گفتیم که php یک زبان سمت سرور است و پردازش آن توسط مفسر (سرور) انجام می شود و البته خروجی آن به صورت html است؛ اکنون در ادامه آموزش های مقدماتی، در این مطلب می خواهیم شما را با یکی از پرکاربردترین و متداول ترین عناصر این زبان یعنی متغیر ها آشنا کنیم و خواهیم گفت که چگونه یک متغیر را تعریف و در جای جای کدمان آن را به کار ببریم.

تعریف متغیر در php


یک متغیر بنا به نیاز شما ممکن است مقادیر عددی، رشته ای (متشکل از حروف)، مقادیر ارسال شده توسط فرم های وب و... باشد؛ متغیر ها مثل مواد خام هستند و طی فرایندی که در کدنویسی برایشان تعریف می کنیم نهایتا خروجی مورد انتظارمان را ایجاد می کنند؛ مثلا فرض کنید احمد 23، حسین 13 و محمد نیز 54 کتاب دارند؛ حال می خواهیم از داده های موجود چند کد محاسباتی فرضی بسازیم:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>وبگو | تعریف متغیر در php</title>
<!-- http://webgoo.ir -->
<style type="text/css">
body{
    font-family:Tahoma, Geneva, sans-serif;
    font-size:12px;
    direction:rtl;
}
</style>
</head>
<body>
<?php
$ahmad = 23;
$hossein = 13;
$mohammad = 54;
$all = $ahmad + $hossein + $mohammad;
$ahmad_hossein = $ahmad + $hossein;
echo "احمد، حسین و محمد $all کتاب دارند!<br />";
echo "احمد و حسین $ahmad_hossein کتاب دارند!<br />";
?>
</body>
</html>
پیش نمایش
توضیح:
- همانطور که در مثال بالا ملاحظه می کنید، کدهای php را می توان در تگهای html نیز نوشت (کد های php را در اصطلاح html embedded گویند).
- در مثال بالا چند متغیر ساده تعریف کردیم و دو خروجی از آنها گرفته ایم.

شیوه نوشتن یک متغیر در php


برای نوشتن و تعریف یک متغیر معمولا از سه شیوه می توان استفاده کرد که البته تفاوتهایی نیز با هم دارند:
- نوشتن مقدار متغیر بین علامت اپوستروف' '، از این شیوه نگارش برای نوشتن رشته های استاتیک استفاده می شود؛ یعنی اگر به فرض در بین مقادیر، متغیری نیز قرار دهید، مقادیر آن جایگزین نمی شود.
- نوشتن مقدار متغیر بین علامت نقل قول " "، از این روش برای جایگزینی مقادیر داینامیک و یا استاتیک استفاده می شود، به عنوان مثال اگر یک متغیر را به این روش در کدمان قرار دهیم،  مقادیر آن جایگزین خودش می شود.
- نوشتن مقدار متغیر بدون علامت، از این شیوه نیز برای تعریف متغیر های تو در تو و اعداد استفاده می شود؛ به مثال زیر توجه کنید:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>وبگو | تعریف متغیر در php به روش های مختلف </title>
<!-- http://webgoo.ir -->
<style type="text/css">
body{
    font-family:Tahoma, Geneva, sans-serif;
    font-size:12px;
    direction:rtl;
}
</style>
</head>
<body>
<?php
//متغیر با اپوستروف
$name = 'webgoo';
//متغیر با نقل قول + اپوستروف
$web = "$name".'.ir';
//متغیر بدون علامت
$port = 25;
//چند خروجی فرضی
echo $web.'<br />';
echo $web.'&nbsp;'.$port.'<br />';
?>
</body>
</html>
پیش نمایش
توضیح:
- برای ترکیب شیوه ها از علامت نقطه و اپوستروف استفاده می کنیم.
- اعداد و مقادیر در مثال فرضی هستند و شما می توانید مقادیر خودتان را جایگزین کنید.
sectionدسته بندی: آموزش مقدماتی » PHP
related مطالب بیشتر:
» کار با switch و case در php
» حلقه for و while در php
» توابع کار با آرایه در php - بخش اول
» توابع کار با آرایه در PHP - بخش سوم
» عملگرهای (Operators) محاسبه و مقایسه در php
commentنظرات (۱۳ یادداشت برای این مطلب ارسال شده است)
نویسنده: حبیب
زمان: ۰۲:۲۲:۵۲ - تاریخ: ۱۳۹۲/۰۱/۰۸
سلام
چرا به جای ارزش واقعی name$ (مقدار دهی شده) همون name$ رو چاپ میکنه ممنون اگه کمکم کنین
echo ('<font font size ="14" color ="red" >$name</font>');
پاسخ: 
سلام
برای چاپ مقدار متغیر یا باید خروجی را بین علامت های "" قرار دهید یا اینکه مطابق نمونه زیر کد را ویرایش کنید:
echo ('<font font size ="14" color ="red" >'.$name.'</font>');
نویسنده: morteza
زمان: ۲۲:۴۰:۳۱ - تاریخ: ۱۳۹۲/۰۴/۲۰
قشنگه
نویسنده: MASOUD
زمان: ۱۴:۱۱:۳۴ - تاریخ: ۱۳۹۲/۰۶/۱۲
عالی بود. ببخشید در زبان PHP میشه یا لازم هست از دستور goto استفاده کرد؟
پاسخ: 
استفاده از goto در PHP از نسخه 5.3.0 به بعد امکانپذیر شده، اما همچنان بین توسعه دهنده گان وب کاربرد چندانی ندارد، اگر برنامه خوبی بنویسید که نظم در آن رعایت شده باشد یا به فرض به صورت شی گراء باشد، نیازی به استفاده از این امکان نیست، goto صرفا در موارد خاصی کاربرد دارد (به فرض ایجاد پرش از قسمتی از کد به قسمت دیگر، شکستن سیکل حلقه های تو در تو و...) که این موارد از طریق روش های عادی نیز امکانپذیر است.
نویسنده: علی
زمان: ۰۳:۲۰:۴۷ - تاریخ: ۱۳۹۲/۰۹/۱۱
سایتتون خیلی خوبه
از خداوند متعال آرزوی سربلندی و سرافرازی برای شما عزیزان دارم
نویسنده: علی
زمان: ۲۱:۴۱:۰۲ - تاریخ: ۱۳۹۲/۱۱/۰۴
با عرض سلام و خسته نباشید خدمت شما.
اگر ممکنه در مورد جای گذاری یک تابع بین قطعه کد اچ تی ام ال که قراره خودشون داخل یک متغیر قرار بگیرن توضیح بدید. (راهنماییم کنید). روش های مختلفی رو به صورت تجربی امتحان کردم و جواب نداد. در مورد کد زیر راهنمایی میخوام.
$this->head_msg = '<div class="tt-notice" style="width: 800px; margin: 15px 0;"><?php __('buy this theme','them')?></div>';
کد بالا رو میخوام در یک قالب وردپرس استفاده کنم و اون تابع ترجمه باید مقدار ترجمه شده رو بین دو تا تگ div قرار میده و در نهایت با هم میشن مقدار اون متغییر که البته نمی دونم چجوری باید بنویسمش که درست کار کنه چون کار نمیکنه. ببخشید زیاد حرف زدم.
پاسخ: 
سلام
هر چند دقیقا متوجه منظورتان نشدیم و با توجه به مرتبط بودن سوال به وردپرس، باید در انجمن های مربوطه سوال می کردید، اما برای قرار دادن تابع در بین خروجی HTML این کد، روش ساده زیر به کار می آید:
$this->head_msg = '<div class="tt-notice" style="width: 800px; margin: 15px 0;">'.yourFunction().'</div>';
همچنین به روش زیر می توانید خروجی را از فیلتر یک تابع عبور دهید:
$this->head_msg = yourFunction('<div class="tt-notice" style="width: 800px; margin: 15px 0;"></div>');
نویسنده: علی
زمان: ۲۳:۵۱:۲۷ - تاریخ: ۱۳۹۲/۱۱/۰۵
سلام دوباره. خیلی ممنون بابت پاسختون.
میشه گفت منظورم همین بود ولی من این راه رو امتحان کرده بودم ولی بازم جواب نمیداد. من تغییرات زیادی داخل کد دادم که بفهمم مشکل از کجاست ولی یا کار نمیکرد و یا ارور میداد. کاربرد اون متغییر اینه که یه مقداری رو داخل پنل ادمین سایت نمایش میده و اون تابع هم که بین دو تگ اچ تی ام ال وجود داره کار ترجمه رو انجام میده ولی نمیدونم چرا کار نمیده. روش دوم شاید بشه ولی اصلا جالب نیست چون چندیدن تگ اچ تی ام ال بوده و من برای اینکه منظورم رو سریع برسونم اونا رو حذف کردم. البته میدونم مربوط به وردپرسه و اینجا آموزش وردپرس نیست ولی اگر ممکنه راهنماییم کنید.
ممنون و موفق باشید.
پاسخ: 
سلام
حل این مشکل بدون تست آنلاین امکانپذیر نیست، هر چند به نظر با یک تابع str_replace مشکلتان حل می شود.
نویسنده: علی
زمان: ۱۸:۳۵:۲۸ - تاریخ: ۱۳۹۲/۱۱/۰۷
سلام. فکر کنم چون اون بحث زیاد کش دادم جواب ندادید ولی یه چیزی هست که باید بگم. من دقیقا همون مقداری رو که اول به اون متغییر نسبت میدادیم رو برداشتم و اگه یادتون باشه گفتم این متغییر داخل یک صفحه پی اچ پی دیگه توسط یک تابع echo نمایش داده میشه. من اون متغییر اولی رو حذف کردم و به جاش داخل کد دوم متغییری ساختم و اون مقدار رو داخلش ریختم و خلاصه اینجوری جواب داد. ولی اگر میشه راهنمایی کنید چرا اونجوری کار نمیداد و در اصل کار میداد ولی درست کار نمیداد مشکلم با اون تابع ترجمه بود.
پاسخ: 
سلام
دوست گرامی، صرف توضیحات کمکی به حل این نوع مشکلات نمی کند، قاعدتا باید امکان تست کدها برایمان فراهم باشد تا بتوانیم دقیق متوجه منظورتان شویم، با توجه به حجم بالای پیام های کاربران امکان تمرکز بر روی نظرات بیش از حد معمول وجود ندارد.
نویسنده: محمودرضا
زمان: ۰۹:۴۹:۵۱ - تاریخ: ۱۳۹۲/۱۱/۲۸
چگونه می توانم در یک وب سایت لوکال تاریخ و ساعت را مانند آنچه در هدر سایت شما قرار دارد قرار دهم ؟ البته من کد php تاریخ شمسی را دارم
پاسخ: 
لطفا در قسمت جستجوی سایت عبارت "تاریخ" را جستجو کنید، در آموزشی جداگانه در این خصوص بحث شده.
نویسنده: hadi0098
زمان: ۱۶:۲۸:۵۴ - تاریخ: ۱۳۹۳/۰۶/۳۱
سلام یه سوال داشتم
میخواستم بدونم تفاوت های
include
require
include_once
require_once
چیه؟؟؟
پاسخ: 
سلام
تمام موارد بالا برای وارد کردن فایلی دیگر در یک فایل PHP است، اما فرق آنها این است که با require اگر فایل مورد نظر در دسترس نباشد یا به فرض نام آن اشتباه باشد و... مفسر PHP از پردازش ادامه کدها خودداری می کند (require = حالت ضروری) اما برای include مفسر PHP ادامه کدها را پردازش می کند، پسوند once هم یعنی اگر قبلا فایل مورد نظر وارد شده باشد، دستورات مشابه بعدی نادیده گرفته می شوند (به فرض در یک حلقه اگر دستور include_once تکرار شود، تنها یک بار فایل وارد می شود).
نویسنده: علی
زمان: ۲۳:۴۹:۵۱ - تاریخ: ۱۳۹۴/۰۲/۲۱
با سلام
ببخشید در همه ی مثال هاتون در قسمت استایل از یک فونت به اسم "ج ن وا" استفاده کرده اید. این فونت را من در ویندوز ندیدم!
پاسخ: 
سلام
Geneva جزء فونت های پیش فرض سیستم عامل مکینتاش (اپل) است، انتخاب فونت های جایگزین (به جزء فونت اول که اهمیت بیشتری دارد) سلیقه ای و بسته به نیاز است.
نویسنده: غریب
زمان: ۲۲:۰۷:۴۰ - تاریخ: ۱۳۹۴/۰۶/۰۵
سلام دوست عزیز سوالی داشتم
در بعضی از کدهای پی اچ پی دیدم که ادرس دهیش مثلا اینجوریه
<script type="text/javascript" src="http://sait.ir/99999/999.php?url=88888.ir&sh2=1&sh2=1&sh3=1"></script>
به اینصورت هست که با اضافه کردن متغیرهایی که میبینید که در کد بصورت sh1 و sh2 تعیین شده میشه نتیجه خروجی فایل پی اچ پی رو تغییراتی داد بنده زیاد وارد نیستم و به اصطلاحات هم اشنایی چندانی ندارم
ممنون میشم با زبانی ساده بهم اموزشش بدید اگه اموزشهاتون هم هزینه داره بفرمایید تا تقدیم کنم عزیز خواهش میکنم این موضوع خیلی برام مهمه مدتهاست دنبال این راه میگردم یدنیا ممنون میشم اگه راهنماییم کنید
ایمیل هم گذاشتم اگه خبرم کنید واقعا ممنون میشم موفق باشید
پاسخ: 
سلام
یادگیری این موارد نیازمند طی کردن آموزش های مقدماتی و آشتایی با مفاهیمی نظیر متد GET و استفاده ترکیبی از PHP و JavaScript است، متاسفانه فرصت کافی برای ارائه آموزش های اختصاصی در اختیار نداریم!
نویسنده: غریب
زمان: ۲۱:۴۸:۴۱ - تاریخ: ۱۳۹۴/۰۶/۱۱
سلام دوست عزیز واقعا ممنون مشکلم حل شد خواستم ازتون کلا بابت سایت مفیدتون تشکر کنم چون واقعا بگم برخلاف خیلیها ادعای الکی نمیکنید و با دانش بالاتون ثابت میکنید مرجع قابل اعتمادی هستید در این زمینه بنده با راهنمایی کوچکی که در جوابیتون بود مشکلم رو حل کردم دعای خیر ما پشت و پناهتون یا حق
نویسنده: مسعود
زمان: ۲۰:۰۶:۴۹ - تاریخ: ۱۳۹۴/۱۲/۱۲
سلام. اگه میشه شی گرایی در php رو هم به صورت مقدماتی اموزش بدین.
پاسخ: 
متاسفانه در کوتاه مدت میسر نیست.




more لطفا دقت کنید که یادداشت های زیر منتشر نشده و حذف خواهند شد:
- یادداشت های خارج از موضوع این مطلب.
- سوالات کلی، غیر ضروری و مشکلاتی که هیچ تلاشی برای رفع آن نکرده باشید.
- نظرات حاوی کدها و اسکریپت های خیلی طولانی (به طور مثال کد کامل قالب وبلاگ).

2 × 6
 refresh
آگهی
seonab.com
طراحی نرم افزار اندروید
رنگین کمان عکس
Ranginkamaan.com

آرشیو عکس های باکیفیت با موضوعات متنوع...