<output id="r87xx"></output>
    1. 
      
      <mark id="r87xx"><thead id="r87xx"><input id="r87xx"></input></thead></mark>
        •   

               當(dāng)前位置:首頁(yè)>軟件介紹>PHP變量基本語法 查詢:
               
          PHP變量基本語法

                  PHP變量用于存儲(chǔ)字符、數(shù)字、數(shù)組甚至對(duì)象內(nèi)容等,以便在我們需要的地方使用。 定義一個(gè)變量的語法: 

                  $變量名 = 值; 

                  使用變量的例子: 

                  代碼如下 復(fù)制代碼 

                  <?php 

                  $var_char = "你好~"; 

                  echo $var_char; 

                  ?> 

                  執(zhí)行這段代碼輸出的結(jié)果是: 

                  1 你好~ 

                  從這個(gè)例子可以看出,變量名以 $ 開始,標(biāo)明這是一個(gè)變量。變量名以字母(a-z、A-Z)或者下劃線 _ 開始,后面可以跟任意字母或數(shù)字以及下劃線,但不能是空格。 如下這些變量名是有效的: 

                  $var_char 

                  $varChar 

                  $_varChar 

                  $var_char5 

                  提示 

                  關(guān)于變量命名,我們建議變量名以標(biāo)明其實(shí)際語意的組合為佳,如 $my_name 或 $myName 格式。 

                  全局變量global 

                  全局變量便是其中之一,當(dāng)然這個(gè)觀點(diǎn)頗具爭(zhēng)議,有許多人還是建議禁用全局變量,使用不當(dāng)對(duì)造成程序的可讀性很差!結(jié)構(gòu)混亂,調(diào)試更是一頭霧水,但是不可否認(rèn)他的便捷,這便是php為什么會(huì)用全局變量global原因吧!? 

                  今天就遇到了php 全局變量不起作用的問題. 

                  先上一段簡(jiǎn)單的代碼: 

                  代碼如下 復(fù)制代碼 

                  <?php 

                  $a = 0 ; 

                  function Test() 

                  { 

                  $a =1; 

                  } 

                  Test(); 

                  echo $a; 

                  ?> 

                  上面的代碼中輸出是0,那是因?yàn)楹瘮?shù)體Test內(nèi)$a變量被缺省設(shè)置為局部變量,$a的作用域就是在Test內(nèi).修改代碼如下 

                  代碼如下 復(fù)制代碼 

                  <?php 

                  $a = 0 ; 

                  function Test() 

                  { 

                  global $a;//申明函數(shù)體Test內(nèi)使用的$a變量為global全局變量 

                  $a =1; 

                  } 

                  Test(); 

                  echo $a; 

                  ?> 

                  申明函數(shù)體Test內(nèi)使用的$a變量為global全局變量后,使得$a的作用全局,所以輸出為1. 上面的實(shí)例只是基本的global全局變量知識(shí),下面我們看看復(fù)雜點(diǎn)的: 代碼如下 復(fù)制代碼 

                  //A.php 文件 

                  <?php 

                  function Test_Global() 

                  { 

                  include 'B.php'; 

                  Test(); 

                  } 

                  $a = 0 ; 

                  Test_Global(); 

                  echo $a; 

                  ?> 

                  //B.php 文件 

                  <?php 

                  function Test() 

                  { 

                  global $a;//申明函數(shù)體Sum內(nèi)使用的$a變量為global全局變量 

                  $a =1; 

                  } 

                  ?> 

                  為什么輸出的卻是0? 

                  在用戶自定義函數(shù)中,一個(gè)局部函數(shù)范圍將被引入。任何用于函數(shù)內(nèi)部的變量按缺省情況將被限制在局部函數(shù)范圍內(nèi)(包括include 和 require 導(dǎo)入的文件內(nèi)的變量)! 

                  解釋:A.php文件的內(nèi)Test_Global是定義好的第三方函數(shù),該函數(shù)用include導(dǎo)入了B.php文件內(nèi)的$a的global全局變量,所以$a被限制在Test_Global局部函數(shù)范圍內(nèi),所以B.php文件內(nèi)的$a的作用范圍都在Test_Global內(nèi),而不是作用了整個(gè)A.php內(nèi). 

                  解決方案: 

                  1. 沖出局部函數(shù)//A.php 文件 

                  代碼如下 復(fù)制代碼 

                  <?php 

                  function Test_Global() 

                  { 

                  Test(); 

                  } 

                  include 'B.php'; //將include 從局部Test_Global函數(shù)中移出 $a = 0 ; 

                  Test_Global(); 

                  echo $a; 

                  ?> 

                  //B.php 文件 

                  <?php 

                  function Test() 

                  { 

                  global $a; 

                  $a =1; 

                  } 

                  ?> 

                  2.優(yōu)秀的訪問器 

                  代碼如下 復(fù)制代碼 //A.php 文件 

                  <?php 

                  include 'B.php'; 

                  $a =0; 

                  Set_Global($a); 

                  echo $a; 

                  ?> 

                  //B.php 文件 

                  <?php 

                  function Set_Global(&$var) 

                  { 

                  $var=1; 

                  } 

                  ?> 

                  php變量 引用函數(shù) static變量無論怎樣聲明變量(按值或按引用),總之在PHP腳本的任何位置都可以聲明變量。但是,聲明的位置會(huì)大大影響訪問變量的范圍。這個(gè)可訪問的范圍稱為作用域(scope)” –PHP與MySQL程序設(shè)計(jì)在了解php變量之前,我們先看看段式內(nèi)存管理架構(gòu)的內(nèi)存段的劃分。通常操作系統(tǒng)會(huì)將物理內(nèi)存劃分為以下幾個(gè)邏輯段。 

                  Text-Segment,這個(gè)段最大的特點(diǎn)就是只讀。一般存放可執(zhí)行代碼,也有可能常量也存放在這里,比如字符串常量 

                  BSS-Segment,這里存放了那些沒有初始化的變量。某種意義來講,沒有初始化的變量都是垃圾,不可用 

                  Data-Segment,這里存放了全局變量和靜態(tài)變量,直到腳本運(yùn)行結(jié)束,操作系統(tǒng)才會(huì)回收這里的內(nèi)存空間,變量亦會(huì)被銷毀。 

                  Stack-Heap Segment 函數(shù)參數(shù)與本地變量(也稱局部變量)存放在堆中(stack),還有返回值等等。用完了,操作系統(tǒng)就會(huì)回收這部分內(nèi)存空間。對(duì)于C程序員而言,可以自行從棧中(heap)申請(qǐng)內(nèi)存空間,用完了,也需要自己手動(dòng)釋放。 

                  作為PHP程序言而言,我們關(guān)心的是全局變量、靜態(tài)變量、局部變量、函數(shù)參數(shù)以及函數(shù)返回值。局部變量和函數(shù)參數(shù)基本上一樣,在初始化的時(shí)候分配內(nèi)存空間,退出函數(shù)后操作系統(tǒng)會(huì)回收內(nèi)存空間。而全局變量與靜態(tài)變量要直php腳本運(yùn)行結(jié)束后,內(nèi)存空間才會(huì)被釋放。與全局變量不同的時(shí),所有靜態(tài)變量在程序執(zhí)行之前就初始化并且分配了內(nèi)存空間。 注: 

                  1.函數(shù)外部聲明靜態(tài)變量意義不大,函數(shù)內(nèi)部聲明靜態(tài)變量受限于作用域,函數(shù)外部不能修改函數(shù)內(nèi)部靜態(tài)變量。 

                  2.引用變量,也是變量,只不過它的值是變量的內(nèi)存地址。

                  


          MySQL個(gè)人學(xué)習(xí)筆記MySQL排序語句
          MySQL入門篇MySQL緩存技術(shù)
          MySQL管理器Windows下安裝MySQL圖解
          MySQLl數(shù)據(jù)庫(kù)文檔MySQL觸發(fā)器
          自學(xué)MySQL筆記PHP培訓(xùn)常用的PHP工具
          對(duì)服務(wù)器端特性配置來加強(qiáng)php的安全學(xué)習(xí)php前景知多少
          PHP開發(fā)入門PHP好學(xué)嗎參加PHP培訓(xùn)需要學(xué)多久
          人們對(duì)PHP的誤解有哪些php內(nèi)置函數(shù)實(shí)例教程
          信息發(fā)布:廣州名易軟件有限公司 http://www.jetlc.com
          • 勁爆價(jià):
            不限功能
            不限用戶
            1998元/年

          • 微信客服

            <output id="r87xx"></output>
          1. 
            
            <mark id="r87xx"><thead id="r87xx"><input id="r87xx"></input></thead></mark>
              • 奇米无码 | 日韩欧美一二三 | 免费操逼。 | 91人妻无码成人精品一区91 | 六月丁香综合 | 久久久AV电影 | 国内成人自拍视频 | 一级a啪啪啪 | 特级西西高清4Www电影 | 免费日逼无码片 |