PDA

مشاهده نسخه کامل : متغیر ها و شروع برنامه نویسی



Siavashmusic
05-01-08, 07:42
سلام

معمولا اولین بخش از سیلابس آموزشی زبان PHP بعد از جزییات ابتدایی HTML فصل مربوط به متغییر ها هست که جزو پایه ترین دروس آموزشی زبان برنامه نویسی هست تقریبا توی کلیه زبان های برنامه نویسی متغییرها وجود دارند

- درباره متغیرها ( متغیر چیست و چگونه از آن استفاده کنیم)
- چگونه یک متغیر را تعریف کنیم و به مقدار آن دسترسی پیدا کنیم
- برخی از علمگرهای متداول
- چگونگی تعریف و استفاده از مقادیر ثابت

متغیر نگهدارنده ویژه ایست برای مقادیر. هر متغیر دارای یک نام است که با علامت $ در اول آن مشخص می شود. نام یک متغیر می تواند شامل حروف ، اعداد و _ باشد. نام یک متغیر نمی تواند شامل space و یا کارکاترهای غیر حرفی باشد.
کدهای زیر چند متغیر را تعریف می کنید :



$a;
$a_longish_variable_name;
$2453;
$sleepyZZZZ


توجه داشته باشید که ; در انتهای هر خط جزونام متغیر می باشد و در واقع نشان دهنده پایان جمله کد PHP است.
برای مقدار دادن به متغیر کافیست که آن را مساوی با مقدارش قرار دهید. به طور معمول شما در یک دستور php متغیر را تعریف می کنید و به آن مقدار می دهید. مانند کدهای زیر :


$num1 = 8;
$num2 = 23;

وقتی که شما به ییک متغیر مقدار دادید می توانید دقیقا مانند یک کاراکتر با آن رفتار کنید. به طور مثال :


print $num1;

دقیقا برابر با دستور


print 8;

می باشد.

نوع داده داخل متغیر DATA TYPE

انواع مختلف اطلاعات در یک متغیر می تواند ذخیره شود که در طول برنامه می توانید رفتارهای متفاوتی با آن نماببد.
برخی زبانهای برنامه نویسی شما را وادار می کنند که در ابتدا و در موقع تعریف متغیر نوع آن را نیز مشخص نمایید.
ولی در PHP لزومی به این کار نیست و نوع اولین مقداری که وارد متغیر شود ، به عنوان نوع متغیر شناخته می شود.

Type - Example - DescriptionInteger - 5 - A wholenumberDouble - 3.234 - A floating-point numberString - "hello" - Acollection of charactersBoolean - true - One of the special values true orfalse
آرایه و OBJECT

جدول فوق انواع داده ها را نشان می دهد.
شما می توانید از دستور gettype() برای مشاهده نوع یک متغیر استفاده کنید. به عنوان مثال :


1: <html>
2: <head>
3: <title>Listing 4.3 Testing the type of a variable</title>
4: </head>
5: <body>
6: <?php
7: $testing = 5;
8: print gettype( $testing ); // integer
9: print "<br>";
10: $testing = "five";
11: print gettype( $testing ); // string
12: print("<br>");
13: $testing = 5.0;
14: print gettype( $testing ); // double
15: print("<br>");
16: $testing = true;
17: print gettype( $testing ); // boolean
18: print "<br>";
19: ?>
20: </body>
21: </html>

کدهای بالا در خروجی جملات زیر را نشان خواهد داد : </div>

integer
string
double
boolean

INTEGER یک عدد صحیح می باشد. به کلام ساده یک عدد بدون ممیز می باشد. STRING یک سری کاراکتر می باشد. وقتی در PHP با STRING کار می کنید باید حتما اطراف آن از " و یا ' استفاده شود. DOUBLE یک عددی است که ممیز نیز دارد. BOOLEAN یا TRUE است و یا FALSE.

تغییر با استفاده از دستور settype()
در PHP با استفاده از دستور settype() شما می توانید نوع یک متغیر را تغییر دهید. برای این کار باید نام متغیر و نوع متغیر که می خواهید به آن تغییر یابد را در بین پرانتز و با فاصله یک کاما در بینشان مشخص نمایید.
به عنوان مثال :


1: <html>
2: <head>
3: <title>Listing 4.5 Changing the type of a variable with settype()</title>
4: </head>
5: <body>
6: <?php
7: $undecided = 3.14;
8: print gettype( $undecided ); // double
9: print " -- $undecided<br>"; // 3.14
10: settype( $undecided, string );
11: print gettype( $undecided ); // string
12: print " -- $undecided<br>"; // 3.14
13: settype( $undecided, integer );
14: print gettype( $undecided ); // integer
15: print " -- $undecided<br>"; // 3
16: settype( $undecided, double );
17: print gettype( $undecided ); // double
18: print " -- $undecided<br>"; // 3.0
19: settype( $undecided, boolean );
20: print gettype( $undecided ); // boolean
21: print " -- $undecided<br>"; // 1
22: ?>
23: </body>
24: </html>

در هر دفعه تغییر متغیر ما با استفاده از دستور GETTYPE() نوع متغیر را چاپ می کنیم که از تغییر آن مطمئن شویم.
همانطور که می بینید در خط 7 مقدار متغیر 3.14 است و به صورت DOUBLE و در خط 10 به STRING تبدیل می شود و در خط 13 به INTEGER تغییر می کند و به 3 تبدیل می شود. (یعنی رند می شود) و به همین صورت......

تغییر نوع داده بدون اینکه اصل متغیر تغییر کند

با قرار دادن نام نوع داده Data Type در داخل پرانتز و قبل از نام متغیر یک کپی از متغیر با نوع داده جدید بدون تغییر دادن متغیر اصلی ایجاد می کند.
به عنوان مثال :


1: <html>
2: <head>
3: <title>Listing 4.6 Casting a variable</title>
4: </head>
5: <body>
6: <?php
7: $undecided = 3.14;
8: $holder = ( double ) $undecided;
9: print gettype( $holder ) ; // double
10: print " -- $holder<br>"; // 3.14
11: $holder = ( string ) $undecided;
12: print gettype( $holder ); // string
13: print " -- $holder<br>"; // 3.14
14: $holder = ( integer ) $undecided;
15: print gettype( $holder ); // integer
16: print " -- $holder<br>"; // 3
17: $holder = ( double ) $undecided;
18: print gettype( $holder ); // double
19: print " -- $holder<br>"; // 3.14
20: $holder = ( boolean ) $undecided;
21: print gettype( $holder ); // boolean
22: print " -- $holder<br>"; // 1
23: ?>

در کد بالا هیچ وقت نوع متغیر اصلی را تغییر ندادیم بلکه مثلا در خط 14 در متغیر $holder مقدار Integer شده متغیر اصلی یعنی مقدار 3 را قرار دادیم در خط 16 آن را چاپ کردیم.