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

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
فهرست تاپیک:

  1. متغیرهای بولین (Boolean) در PHP
  2. تعریف متغیرهای سراسری (global) در PHP
  3. تعیین نوع یک متغیر با تابع gettype در PHP
  4. تغییر نوع یک متغیر با تابع settype در PHP
  5. توابع مربوط به تعیین نوع متغیرها (به صورت : آیا عضو این نوع متغیرها هست یا خیر) در PHP
  6. تشخیص تعریف یا عدم تعریف (وجود یا عدم وجود) یک متغیر، با تابع isset در PHP
  7. نمایش نوع و مقدار یک متغیر (به صورت ساختاری)، با تابع var_dump در PHP
  8. افزایش میزان اطلاعاتی که تابع var_dump نمایش می دهد، در PHP
  9. تشخیص تمامی متغیرهای تعریف شده تاکنون، با تابع get_defined_vars در PHP
  10. متغیرهای فوق سراسری (superglobal) در PHP
  11. متغیر فوق سراسری $_REQUEST در PHP



منبع: kelidestan
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
متغیرهای بولین (Boolean) در PHP

متغیرهای بولین (Boolean) در PHP

هر متغیر بولین (Boolean) در PHP ، می تواند دارای یکی از دو مقدار true یا false باشد. بسیاری از توابع تعریف شده در PHP ، یک مقدار بولین را برمی گردانند. همچنین زمانی که ما یک شرط را در PHP چک می کنیم، مقدار بازگشتی از عبارت نوشته شده برای شرط، یک مقدار بولین می باشد.

به مثال زیر توجه کنید :

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B] 
[COLOR=#000088]$a[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#009900][B]true[/B][/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]"a = "[/COLOR][COLOR=#339933].[/COLOR][COLOR=#000088]$a[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]"<br />"[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#000088]$b[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#009900][B]false[/B][/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]"b = "[/COLOR][COLOR=#339933].[/COLOR][COLOR=#000088]$b[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :[/h]Untitled.jpg
مشاهده می کنید که مقدار متغیر $a برابر 1 می باشد که همان معادل true است و مقدار متغیر $b برابر false است.

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B] 
[COLOR=#000088]$a[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]5[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#000088]$b[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]5[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$a[/COLOR] [COLOR=#339933]==[/COLOR] [COLOR=#000088]$b[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :[/h]Untitled.jpg
مشاهده می کنید که عبارت $a == $b ، مقدار 1 (یعنی true) را برگردانده است، زیرا دو متغیر، با هم برابر می باشند.
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
تعریف متغیرهای سراسری (global) در PHP

تعریف متغیرهای سراسری (global) در PHP

زمانی که در PHP ، یک تابع تعریف می کنیم، متغیرهای تعریف شده درون تابع، به صورت محلی (local) خواهند بود. منظور از محلی بودن متغیرها، این است که این متغیرها، تنها درون تابع وجود خواهند داشت و در بیرون از تابع، نمی توان از آنها استفاده نمود. برای درک بهتر این موضوع، به کدهای زیر توجه کنید :
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B] 
[COLOR=#000088]$my_variable[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]1[/COLOR][COLOR=#339933];[/COLOR]

[B]function[/B] my_function[COLOR=#009900]([/COLOR][COLOR=#009900])[/COLOR][COLOR=#009900]{[/COLOR]
    [COLOR=#000088]$my_variable[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]2[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#009900]}[/COLOR]

my_function[COLOR=#009900]([/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#B1B100]echo[/COLOR] [COLOR=#000088]$my_variable[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
ابتدا متغیر my_variable را برابر 1 تعریف کرده ایم. سپس یک تابع ساخته ایم و درون تابع ساخته شده، یک متغیر با همان نام my_variable تعریف کرده ایم که دارای مقدار 2 می باشد. سپس به تابع ارجاع داده ایم تا اجرا شود و در آخر نیز، مقدار متغیر my_variable را در خروجی چاپ می کنیم تا ببینیم برابر مقدار 1 است یا برابر مقدار 2 :

[h=4]نتیجه :[/h]Untitled.jpg
مشاهده می کنید که خروجی برابر 1 شده است. این نتیجه به این دلیل است که متغیر my_variable درون تابع، به صورت محلی (local) است، بنابراین در خارج از تابع، قابل استفاده نیست و بنابراین مقدار متغیر my_variable در خارج از تابع، همان طور که قبلا آن را تعریف کرده ایم، برابر 1 می باشد.

حال فرض کنید که بخواهیم مقدار یک متغیر را بتوانیم در داخل توابع نیز تغییر بدهیم، برای این منظور، باید آن متغیر را درون توابع، به صورت سراسری (global) تعریف کنیم. همان کد بالا را دوباره می نویسیم و این بار، متغیر my_variable را درون تابع، به صورت سراسری (global) تعریف می کنیم تا بتوانیم از درون تابع، مقدار متغیر را تغییر بدهیم :
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B] 
[COLOR=#000088]$my_variable[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]1[/COLOR][COLOR=#339933];[/COLOR]

[B]function[/B] my_function[COLOR=#009900]([/COLOR][COLOR=#009900])[/COLOR][COLOR=#009900]{[/COLOR]
    [B]global[/B] [COLOR=#000088]$my_variable[/COLOR][COLOR=#339933];[/COLOR]
    [COLOR=#000088]$my_variable[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]2[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#009900]}[/COLOR]

my_function[COLOR=#009900]([/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#B1B100]echo[/COLOR] [COLOR=#000088]$my_variable[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :[/h]Untitled.jpg
مشاهده می کنید که این بار، مقدار متغیر my_variable ، برابر 2 شده است، بنابراین توانستیم مقدار آن را از درون تابع، تغییر بدهیم.
 

پیوست ها

  • Untitled.jpg
    Untitled.jpg
    7.3 کیلوبایت · بازدیدها: 0

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
تعیین نوع یک متغیر با تابع gettype در PHP

تعیین نوع یک متغیر با تابع gettype در PHP

تابع gettype در PHP برای تعیین نوع یک متغیر به کار می رود. تابع gettype ، یک متغیر را در ورودی خود دریافت می کند و سپس نوع آن متغیر را برمی گرداند. به مثال زیر توجه کنید :

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B]
[COLOR=#000088]$number[/COLOR][COLOR=#339933]=[/COLOR][COLOR=#CC66CC]2[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#990000]gettype[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$number[/COLOR][COLOR=#009900])[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]      
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :[/h]Untitled.jpg
مشاهده می کنید که نوع متغیر number که integer می باشد، در خروجی نمایش داده شده است.

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B]
[COLOR=#000088]$name[/COLOR][COLOR=#339933]=[/COLOR][COLOR=#0000FF]"ALI"[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#990000]gettype[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$name[/COLOR][COLOR=#009900])[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]      
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :[/h]Untitled.jpg
نوع متغیر name که string می باشد، در خروجی نمایش داده شده است.
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
تغییر نوع یک متغیر با تابع settype در PHP

تغییر نوع یک متغیر با تابع settype در PHP

با استفاده از تابع settype در PHP می توانیم نوع یک متغیر را تغییر بدهیم. در PHP، متغیرها می توانند به صورت integer ، double ، string ، array یا object باشند. حال چنانچه یک متغیر خاص، از یکی از این انواع متغیرها باشد و ما بخواهیم نوع آن را تغییر بدهیم (مثلا از double به string تغییر بدهیم)، باید از دستور settype در PHP استفاده کنیم. به مثال زیر توجه کنید :

[h=4]مثال :[/h]یک متغیر را با نام A و با مقدار 2 تعریف می کنیم، بنابراین نوع متغیر، integer می باشد. سپس با دستور settype ، نوع متغیر را به string تغییر می دهیم :
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B]
[COLOR=#000088]$A[/COLOR][COLOR=#339933]=[/COLOR][COLOR=#CC66CC]2[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#000088]$A_type[/COLOR][COLOR=#339933]=[/COLOR][COLOR=#990000]gettype[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$A[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$A_type[/COLOR][COLOR=#339933].[/COLOR][COLOR=#0000FF]"<br />"[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#990000]settype[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$A[/COLOR][COLOR=#339933],[/COLOR][COLOR=#0000FF]"string"[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#000088]$A_type_new[/COLOR][COLOR=#339933]=[/COLOR][COLOR=#990000]gettype[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$A[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$A_type_new[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
تابع gettype در PHP ، برای تعیین نوع متغیرها به کار می رود و در کدهای PHP بالا، از تابع gettype ، برای تعیین نوع متغیر A استفاده کرده ایم.

[h=4]نتیجه :[/h]Untitled.jpg
مشاهده می کنید که متغیر A ، ابتدا از نوع integer بوده و سپس به string تبدیل شده است.
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
توابع مربوط به تعیین نوع متغیرها (به صورت : آیا عضو این نوع متغیرها هست یا خیر) در PHP

توابع مربوط به تعیین نوع متغیرها (به صورت : آیا عضو این نوع متغیرها هست یا خیر) در PHP

قبلا گفتیم که با استفاده از تابع gettype در PHP می توان نوع یک متغیر را متوجه شد، اما گاهی نیاز داریم که با یک تابع، بفهمیم که آیا یک متغیر به یک نوع از متغیرها، تعلق دارد یا خیر. برای این موارد، دستورات زیر به کار می روند :


تابعنوع متغیری که چک می شود
is_arrayarray
is_float یا is_real یا is_doublefloat
is_boolboolean
is_integer یا is_int یا is_longinteger
is_stringstring
is_objectobject


هر یک از این دستورها، یک متغیر را دریافت می کنند، اگر متغیر عضو آن نوع (آن نوع متغیر) مشخص شده برای تابع باشد، آنگاه تابع، مقدار true را برمی گرداند و در غیر این صورت، تابع مقدار false را برمی گرداند.

به مثال زیر توجه کنید :

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B]
[COLOR=#000088]$float[/COLOR][COLOR=#339933]=[/COLOR][COLOR=#800080]1.2[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]if[/COLOR][COLOR=#009900]([/COLOR][COLOR=#990000]is_float[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$float[/COLOR][COLOR=#009900])[/COLOR][COLOR=#009900])[/COLOR][COLOR=#009900]{[/COLOR]
    [COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$float[/COLOR][COLOR=#339933].[/COLOR][COLOR=#0000FF]" is a float"[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#009900]}[/COLOR][COLOR=#B1B100]else[/COLOR][COLOR=#009900]{[/COLOR]
    [COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$float[/COLOR][COLOR=#339933].[/COLOR] [COLOR=#0000FF]" is not a float"[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#009900]}[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :Untitled.jpg[/h]
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
تشخیص تعریف یا عدم تعریف (وجود یا عدم وجود) یک متغیر، با تابع isset در PHP

تشخیص تعریف یا عدم تعریف (وجود یا عدم وجود) یک متغیر، با تابع isset در PHP

گاهی نیاز داریم که بدانیم که آیا یک متغیر (با نامی خاص)، قبلا تعریف شده است یا خیر (وجود متغیر یا NULL بودن آن). در اینگونه موارد، باید از تابع isset در PHP استفاده نماییم. همچنین دقت داشته باشید که با استفاده از تابع unset ، می توانیم یک متغیر را حذف کنیم (تبدیل به NULL).

تابع isset در PHP ، یک مقدار بولین (Boolean) را برمی گرداند (یعنی یا true یا false).

به مثال زیر توجه کنید :

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B] 
[COLOR=#000088]$a[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]2[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#000088]$b[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#990000]isset[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$a[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]"b = "[/COLOR][COLOR=#339933].[/COLOR][COLOR=#000088]$b[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]"<br />"[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#000088]$c[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#990000]isset[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$d[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]"c = "[/COLOR][COLOR=#339933].[/COLOR][COLOR=#000088]$c[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :[/h]
Untitled.jpg

مشاهده می کنید که مقدار متغیر $b برابر 1 می باشد (یعنی برابر true)، زیرا متغیر $a تعریف شده است. همچنین مقدار متغیر $c برابر false می باشد، زیرا متغیری با نام $d تعریف نشده است.

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B] 
[COLOR=#000088]$a[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]2[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#990000]unset[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$a[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#000088]$b[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#990000]isset[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$a[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]"b = "[/COLOR][COLOR=#339933].[/COLOR][COLOR=#000088]$b[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]"<br />"[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]

[COLOR=#B1B100]echo[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$a[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :[/h]
Untitled.jpg


مشاهده می کنید که متغیر $b برابر false می باشد، زیرا با تابع unset ، متغیر $a را حذف کرده ایم. در آخر نیز عمدا سعی کرده ایم کدی را بنویسیم که تولید خطا می کند، یعنی خواسته ایم که مقدار متغیر $a در خروجی چاپ شود، ولی چون دیگر این متغیر وجود ندارد، PHP یک پیام خطا را نمایش داده است. بنابراین بعد از استفاده از تابع unset برای یک متغیر، دیگر آن متغیر وجود ندارد و نمی توانید از آن استفاده کنید.
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
نمایش نوع و مقدار یک متغیر (به صورت ساختاری)، با تابع var_dump در PHP

نمایش نوع و مقدار یک متغیر (به صورت ساختاری)، با تابع var_dump در PHP

با استفاده از تابع var_dump در PHP ، می توانیم نوع و مقدار یک متغیر را نمایش بدهیم. اگر متغیر به صورت آرایه ای از عناصر مختلف باشد، آنگاه تابع var_dump ، به خوبی می تواند ساختار متغیر را به ما نشان بدهد، به گونه ای که هم مقادیر عناصر را مشاهده کنیم و هم نوع آن عناصر را متوجه بشویم. به مثال زیر توجه کنید :

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B]
[COLOR=#000088]$A[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#990000]array[/COLOR][COLOR=#009900]([/COLOR][COLOR=#CC66CC]1[/COLOR][COLOR=#339933],[/COLOR] [COLOR=#0000FF]"dog"[/COLOR][COLOR=#339933],[/COLOR] [COLOR=#990000]array[/COLOR][COLOR=#009900]([/COLOR][COLOR=#CC66CC]32[/COLOR][COLOR=#339933],[/COLOR] [COLOR=#0000FF]"cat"[/COLOR][COLOR=#009900])[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#990000]var_dump[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$A[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :[/h]Untitled.jpg
مشاهده می کنید که نوع و مقادیر عناصر آرایه و ساختار آن، به راحتی قابل تشخیص است.
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
افزایش میزان اطلاعاتی که تابع var_dump نمایش می دهد، در PHP

افزایش میزان اطلاعاتی که تابع var_dump نمایش می دهد، در PHP

اگر دقت کرده باشید، هنگام نمایش محتوای ذخیره شده در یک متغیر، با استفاده از تابع var_dump، چنانچه میزان اطلاعات ذخیره شده در متغیر از یک حدی بیشتر باشد، آنگاه تابع var_dump تنها بخشی از اطلاعات آن را نمایش می دهد. برای افزایش این مقدار نمایش (حتی تا حدی که همه اطلاعات نمایش داده شوند)، باید مقادیر برخی پارامترها را در فایل php.ini تغییر بدهیم.

این پارامترها در فایل php.ini عبارتند از :

کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][COLOR=#339933];[/COLOR] with sane limits
xdebug[COLOR=#339933].[/COLOR]var_display_max_depth [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]5[/COLOR]
xdebug[COLOR=#339933].[/COLOR]var_display_max_children [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]256[/COLOR]
xdebug[COLOR=#339933].[/COLOR]var_display_max_data [COLOR=#339933]=[/COLOR] [COLOR=#CC66CC]1024[/COLOR] 


[COLOR=#339933];[/COLOR] with no limits
[COLOR=#339933];[/COLOR] [COLOR=#009900]([/COLOR]maximum nesting is [COLOR=#CC66CC]1023[/COLOR][COLOR=#009900])[/COLOR]
xdebug[COLOR=#339933].[/COLOR]var_display_max_depth [COLOR=#339933]=[/COLOR] [COLOR=#339933]-[/COLOR][COLOR=#CC66CC]1[/COLOR] 
xdebug[COLOR=#339933].[/COLOR]var_display_max_children [COLOR=#339933]=[/COLOR] [COLOR=#339933]-[/COLOR][COLOR=#CC66CC]1[/COLOR]
xdebug[COLOR=#339933].[/COLOR]var_display_max_data [COLOR=#339933]=[/COLOR] [COLOR=#339933]-[/COLOR][COLOR=#CC66CC]1[/COLOR][/FONT]
[/FONT][/COLOR]
بعد از تغییر مقادیر این پارامترها، باید سرور restart شود تا شاهد اجرای تغییرات باشیم (یا اگر از نرم افزار شبیه ساز سرور مثل wampserver استفاده کردید، باید آن را بسته و دوباره اجرا کنید).

چنانچه قصد نداشته باشیم که به صورت دستی این مقادیر را تغییر بدهیم، می توانیم این تغییرات را با خود کدهای PHP در میان کدهای اصلی خود اعمال نماییم :
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B]
[COLOR=#990000]ini_set[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]'xdebug.var_display_max_depth'[/COLOR][COLOR=#339933],[/COLOR] [COLOR=#CC66CC]5[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#990000]ini_set[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]'xdebug.var_display_max_children'[/COLOR][COLOR=#339933],[/COLOR] [COLOR=#CC66CC]256[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#990000]ini_set[/COLOR][COLOR=#009900]([/COLOR][COLOR=#0000FF]'xdebug.var_display_max_data'[/COLOR][COLOR=#339933],[/COLOR] [COLOR=#CC66CC]1024[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
برای نمایش میزان اطلاعات بیشتر، باید اعداد بزرگتری انتخاب کنیم.
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
تشخیص تمامی متغیرهای تعریف شده تاکنون، با تابع get_defined_vars در PHP

تشخیص تمامی متغیرهای تعریف شده تاکنون، با تابع get_defined_vars در PHP

با استفاده از تابع get_defined_vars در PHP ، می توانیم تمامی تابع هایی که تاکنون تعریف کرده ایم را به صورت یک آرایه داشته باشیم (برای نمایش یا استفاده های دیگر). به مثال زیر توجه کنید :

[h=4]مثال :[/h]
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][B]<?php[/B]
[COLOR=#000088]$A[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#990000]array[/COLOR][COLOR=#009900]([/COLOR][COLOR=#CC66CC]1[/COLOR][COLOR=#339933],[/COLOR][COLOR=#CC66CC]2[/COLOR][COLOR=#339933],[/COLOR][COLOR=#CC66CC]3[/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#000088]$B[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#0000FF]"hello"[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#000088]$array_1[/COLOR] [COLOR=#339933]=[/COLOR] [COLOR=#990000]get_defined_vars[/COLOR][COLOR=#009900]([/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[COLOR=#990000]print_r[/COLOR][COLOR=#009900]([/COLOR][COLOR=#000088]$array_1[/COLOR][COLOR=#009900][[/COLOR][COLOR=#0000FF]"A"[/COLOR][COLOR=#009900]][/COLOR][COLOR=#009900])[/COLOR][COLOR=#339933];[/COLOR]
[B]?>[/B][/FONT]
[/FONT][/COLOR]
[h=4]نتیجه :Untitled.jpg[/h]
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
متغیرهای فوق سراسری (superglobal) در PHP

متغیرهای فوق سراسری (superglobal) در PHP

متغیرهای فوق سراسری (superglobal) در PHP ، متغیرهایی هستند که از پیش تعریف شده اند و همیشه در دسترس می باشند و شما درون هر کلاس (class) یا تابعی (function)، بدون انجام هیچ عملیات خاصی، می توانید به آنها دسترسی داشته باشید.

متغیرهای فوق سراسری (superglobal) تعریف شده در PHP را در لیست زیر نمایش داده ایم :
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][COLOR=#000088]$GLOBALS[/COLOR]
[COLOR=#000088]$_SERVER[/COLOR]
[COLOR=#000088]$_REQUEST[/COLOR]
[COLOR=#000088]$_POST[/COLOR]
[COLOR=#000088]$_GET[/COLOR]
[COLOR=#000088]$_FILES[/COLOR]
[COLOR=#000088]$_ENV[/COLOR]
[COLOR=#000088]$_COOKIE[/COLOR]
[COLOR=#000088]$_SESSION[/COLOR][/FONT]
[/FONT][/COLOR]
 

P O U R I A

مدیر مهندسی شیمی مدیر تالار گفتگوی آزاد
مدیر تالار
متغیر فوق سراسری $_REQUEST در PHP

متغیر فوق سراسری $_REQUEST در PHP

متغیر $_REQUEST ، یک متغیر فوق سراسری (superglobal) است که حاوی محتویات سه متغیر فوق سراسری زیر می باشد :
کد:
[COLOR=#000000][FONT=Tahoma][FONT=monospace][COLOR=#000088]$_GET[/COLOR]
[COLOR=#000088]$_POST[/COLOR]
[COLOR=#000088]$_COOKIE[/COLOR][/FONT]
[/FONT][/COLOR]
بنابراین، مثلا فرض کنید که در یک صفحه PHP ، مقدار یک متغیر را بتوانیم از هر دو روش GET و POST به دست آوریم، آنگاه تنها کافی است که برای متغیر فوق سراسری $_REQUEST کد بنویسیم و نیازی به کدنویسی جداگانه برای متغیرهای فوق سراسری $_GET و $_POST نمی باشد.
 
بالا