php變數的調用
A. php怎麼調用函數內部數組變數
如你要調用function的運行結果,首先function要有返回值。你只需這樣寫:
function
creatList(){
....//你的代碼
return
$tr_array;//再末尾加上這句,就可以在外部獲取運行結果
}
具體調用:
$test
=
new
createHistoryList();
$arr
=$test->creatList();//這不就獲得$tr_array數組的值了么
print_r($arr);//列印$arr
B. PHP怎麼調用函數內部數組變數
如你要調用function的運行結果,首先function要有
返回值
。你只需這樣寫:
function
creatList(){
....//你的代碼
return
$tr_array;//再末尾加上這句,就可以在外部獲取運行結果
}
具體調用:
$test
=
new
createHistoryList();
$arr
=$test->creatList();//這不就獲得$tr_array數組的值了么
print_r
($arr);//列印$arr
C. php類中的函數能否調用類中成員變數
php類中的函數能調用類中成員變數。即使沒有具體對象,也能調用類的靜態成員函數和成員變數。
D. Php 類中如何調用類外的變數
你好,有兩種方式可以解決問題。
1,將$m設置為超級全局變數..........****這種方法不推薦使用****
$GLOBALS['m']="mmmmmmm";//將m設置為超級全局變數
$a=$GLOBALS['m'];//在類的方法體中將m的值賦給a
2,將m的值作為參數傳給link 方法
function link($par){//設置形參
$a=$par;//賦值
}
link($m);//在調用link方法時,將$m傳給方法體
如有其它問題可Q22940449
E. php中怎麼調用方法中的靜態變數
看看下面的實例:
<?php
function Test()
{
$w3sky = 0;
echo $w3sky;
$w3sky++;
}
?>
本函數每次調用時都會將 $w3sky 的值設為 0 並輸出 "0"。將變數加一的 $w3sky++ 沒有其到效果,因為一旦退出本函數則變數 $w3sky 就不存在了。
要寫一個不會丟失本次計數值的計數函數,要將變數 $w3sky 定義為靜態(static)的:
如下:
<?php
function Test()
{
static $w3sky = 0;
echo $w3sky;
$w3sky++;
}
?>
F. php在同一個類裡面的變數如何在另一個函數中調用
需要准備的材料分別是:電腦、php編輯器、瀏覽器。
1、首先,打開php編輯器,新建php文件,例如:index.php,填充問題基礎代碼,以fun2中調用fun1中的$v變數為例。
G. PHP函數名帶變數,怎麼調用的
PHP是解釋語言,可以調用變數名、表達式名的函數,例如:
$a='base64' . '_decode';
echo $a('abc');
H. php 調用 其他文件變數
★ PHP變數是有作用域(指定的有效范圍)的:
函數內聲明的變數只對該函數有效,出了函數的范圍就會無效;
同理在函數以外聲明的變數在函數中訪問也是無效的;
函數內的變數跨函數訪問也是無效的。
★ 問題推測:
聽你上面說的情況,你的$username變數應該聲明在函數或者類里邊,然後從函數外訪問;或者聲明在函數外,但從函數中進行訪問了。
★ 解決方法:
函數中的變數要想讓其全局有效必須得在變數前面加global關鍵字聲明成全局變數才可以在函數以外訪問到;同理在函數外聲明的函數如果想要在函數中來訪問,也要使用global關鍵字來聲明為全局變數。
★關於php變數作用域的示範:
舉例有php文件b.php如下:
<?php
functionfunc1(){
global$a2;
$a1='vara1Infilebfunctionfunc1';
$a2='vara2Infilebfunctionfunc1';
}
?>
然後有php文件a.php如下:
<?php
error_reporting(0);//關閉錯誤報告
include('b.php');//引用b.php
$a3='vara3Infileaoutoffunction';
$a4='vara4Infileaoutoffunction';
functionfunc2(){
global$a5;
$a5='vara5Infileafunctionfunc2';
$a6='vara6Infileafunctionfunc2';
}
functionfunc3(){
echo'printvar$a1to$a6infunctionfunc3:<br>';
var_mp($a1);
var_mp($a2);
var_mp($a3);
var_mp($a4);
var_mp($a5);
var_mp($a6);
}
functionfunc4(){
echo'printvar$a1to$a6infunctionfunc4:<br>';
global$a1;
global$a2;
global$a3;
global$a4;
global$a5;
global$a6;
var_mp($a1);
var_mp($a2);
var_mp($a3);
var_mp($a4);
var_mp($a5);
var_mp($a6);
}
echo'printvar$a1$a2$a5$a6infilea:<br/>';
var_mp($a1);
var_mp($a2);
var_mp($a5);
var_mp($a6);
func3();
func4();
func1();
func2();
echo'printvar$a1$a2$a5$a6infilea(aftercallfunc1andfunc2):<br/>';
var_mp($a1);
var_mp($a2);
var_mp($a5);
var_mp($a6);
func3();
func4();
?>
執行a.php後就會輸出:
printvar$a1$a2$a5$a6infilea:<!--$a1$a2$a5$a6都被聲明在函數中,此時因為函數未被調用,所以都無法正確取值-->
null
null
null
null
printvar$a1to$a6infunctionfunc3:<!--$a1$a2$a5$a6同上,$a3和$a4因為在函數外聲明所以全部無法正確取值-->
null
null
null
null
null
null
printvar$a1to$a6infunctionfunc4:<!--$a1$a2$a3$a4同上,$a3和$a4用global聲明為全局了,所以可以正確取值-->
null
null
string'vara3Infileaoutoffunction'(length=32)
string'vara4Infileaoutoffunction'(length=32)
null
null
printvar$a1$a2$a5$a6infilea(aftercallfunc1andfunc2):<!--在執行func1和func2之後被關鍵字聲明為全局變數的$a2和$a5可以被正確取值-->
null
string'vara2Infilebfunctionfunc1'(length=31)
string'vara5Infileafunctionfunc2'(length=31)
null
printvar$a1to$a6infunctionfunc3:<!--因為所有變數不是聲明在函數func3外就是被聲明在其他函數中,所以都無法正確取值-->
null
null
null
null
null
null
printvar$a1to$a6infunctionfunc4:<!--除了在其它函數內未被聲明為全局的$a1和$a6,其他變數均被正確取值-->
null
string'vara2Infilebfunctionfunc1'(length=31)
string'vara3Infileaoutoffunction'(length=32)
string'vara4Infileaoutoffunction'(length=32)
string'vara5Infileafunctionfunc2'(length=31)
null
上面的代碼可以讓你很好的理解變數作用域的規則。
★ 資料參考
更多的變數作用域資料請參考http://www.php.net/manual/zh/language.variables.scope.php