unset() 銷毀指定的變數。注意在 php 3 中,unset() 將返回 true(實際上是整型值 1),而在 php 4 中,unset() 不再是乙個真正的函式:它現在是乙個語句。這樣就沒有了返回值,試圖獲取 unset() 的返回值將導致解析錯誤。
例子 1. unset() 示例
<?php
// 銷毀單個變數
unset ($foo);
// 銷毀單個陣列元素
unset ($bar['quux']);
// 銷毀乙個以上的變數
unset ($foo1, $foo2, $foo3);
?>
unset() 在函式中的行為會依賴於想要銷毀的變數的型別而有所不同。
如果在函式中 unset() 乙個全域性變數,則只是區域性變數被銷毀,而在呼叫環境中的變數將保持呼叫 unset() 之前一樣的值。
<?php
function destroy_foo()
$foo = 'bar';
destroy_foo();
echo $foo;
?>
上邊的例子將輸出:
bar如果在函式中 unset() 乙個通過引用傳遞的變數,則只是區域性變數被銷毀,而在呼叫環境中的變數將保持呼叫 unset() 之前一樣的值。
<?php
function foo(&$bar)
$bar = 'something';
echo "$bar\n";
foo($bar);
echo "$bar\n";
?>
上邊的例子將輸出:
something
something
如果在函式中 unset() 乙個靜態變數,則 unset() 將銷毀此變數及其所有的引用。//我不太能理解這句話的意思,從結果上來看靜態變數的值並沒有被銷毀
<?php
function foo()
foo();
foo();
foo();
?>
上邊的例子將輸出:12
3如果您想在函式中 unset() 乙個全域性變數,可使用 $globals 陣列來實現:
<?php
function foo()
$bar = "something";
foo();
?>
注: 由於這是乙個語言結構而非函式,因此它無法被變數函式呼叫。
PHPunset 用法詳解
unset 銷毀指定的變數。注意在 php 3 中,unset 將返回true 實際上是整型值 1 而在 php 4 中,unset 不再是乙個真正的函式 它現在是乙個語句。這樣就沒有了返回值,試圖獲取 unset 的返回值將導致解析錯誤。例子 1.unset 示例 銷毀單個變數 unset foo...
const用法詳解
物件導向是c 的重要特性.但是c 在c的基礎上新增加的幾點優化也是很耀眼的 就const直接可以取代c中的 define 以下幾點很重要,學不好後果也也很嚴重 1.const常量,如const int max 100 優點 const常量有資料型別,而巨集常量沒有資料型別。編譯器可以對前者進行型別安...
const 用法詳解
物件導向是c 的重要特性.但是c 在c的基礎上新增加的幾點優化也是很耀眼的 就const直接可以取代c中的 define 以下幾點很重要,學不好後果也也很嚴重 1.const常量,如const int max 100 優點 const常量有資料型別,而巨集常量沒有資料型別。編譯器可以對前者進行型別安...