Làm cách nào để bỏ đặt biến toàn cục trong PHP?

❮ Tham chiếu xử lý biến PHP

Thí dụ

Bỏ đặt biến

$a = "Xin chào thế giới. “;
echo "Giá trị của biến 'a' trước khi bỏ đặt. ". $a. "
“;
bỏ đặt($a);
echo "Giá trị của biến 'a' sau khi bỏ đặt. ". $a;
?>

Tự mình thử »


Định nghĩa và cách sử dụng

Hàm unset() hủy đặt một biến


cú pháp

Giá trị tham số

Tham sốMô tảbiếnBắt buộc. Chỉ định biến để bỏ đặt. Không bắt buộc. Một biến khác để bỏ đặt

chi tiết kỹ thuật

Giá trị trả về. Không có Loại trả lại. Không cóPhiên bản PHP. 4. 0+
❮ Tham chiếu xử lý biến PHP

Nếu chức năng hủy đặt được sử dụng cho các biến cục bộ và toàn cầu, thì nó sẽ đặt lại cả hai biến cục bộ. Điều đó có nghĩa là giá trị của biến toàn cục không thay đổi được xác định trước khi thay đổi bên trong hàm. Mảng $GLOBALS hoặc từ khóa toàn cầu có thể được sử dụng để hủy đặt vĩnh viễn biến toàn cục. Việc sử dụng chức năng này để đặt lại các biến PHP đã được hiển thị trong hướng dẫn này

cú pháp

Hàm này có thể xóa nhiều biến thuộc các kiểu dữ liệu khác nhau và không trả lại kết quả nào. Cú pháp của chức năng này đã đưa ra dưới đây

void unset( hỗn hợp $var[, mixed ...$vars])

Đối số đầu tiên của chức năng này là bắt buộc. Các đối số tùy chọn khác có thể được sử dụng trong hàm này để xóa nhiều biến

Công dụng của hàm unset()

Việc sử dụng hàm unset() để xóa một hoặc nhiều biến đã được trình bày trong phần hướng dẫn này

Ví dụ 1. Đặt lại biến toàn cục

Tạo một tệp PHP với tập lệnh sau để kiểm tra cách xóa một biến bằng biến unset(). Trong tập lệnh, một biến float đã được khai báo đã bị xóa sau đó bằng cách sử dụng hàm unset(). Biến đã in trước khi xóa và sau khi xóa




//Khởi tạo một giá trị động

$CGPA = 3. 84;

// Hiển thị giá trị và giá trị kết xuất của biến

echo "Giá trị của biến sau khi đặt. $CGPA ";

echo "Giá trị kết xuất của biến sau khi đặt. "Giá trị kết xuất của biến sau khi đặt. "Giá trị kết xuất của biến sau khi đặt. ";

var_dump($CGPA);

echo """";


// Bỏ đặt biến

bỏ đặt($CGPA);


// Hiển thị giá trị và giá trị kết xuất của biến sau khi bỏ đặt

echo "Giá trị của biến sau khi bỏ đặt. $CGPA ";

echo "Giá trị kết xuất của biến sau khi không đặt. "Giá trị kết xuất của biến sau khi không đặt. "Giá trị kết xuất của biến sau khi không đặt. ";

var_dump($CGPA);

echo ";

?>

đầu ra

Đầu ra sau sẽ xuất hiện sau khi thực hiện đoạn mã trên. Các thông báo cảnh báo đã được in ở đầu ra sau khi xóa biến

Làm cách nào để bỏ đặt biến toàn cục trong PHP?

Ví dụ-2. Đặt lại biến toàn cục bên trong hàm

Tạo một tệp PHP với tập lệnh sau để kiểm tra biến toàn cục hoạt động như thế nào khi biến bị xóa bên trong hàm. Biến toàn cục có tên $num đã được khai báo trong tập lệnh và 10 đã được thêm biến và xóa biến bằng hàm unset() bên trong hàm có tên unsetGlobal(). $nun đã được in trước và sau khi gọi hàm Unset Global()




//Khai báo một biến số nguyên

$num = 10;


/*

Khai báo hàm kiểm tra

hàm unset() như thế nào

hoạt động cho biến toàn cục bên trong hàm

*/


function unsetGlobal ()

{

    toàn cầu $num;

    //Thêm 10 với giá trị thanh toán toàn cầu

    $num = $num + 10;

    //Bỏ đặt biến toàn cục

    bỏ đặt($num);

}


//In biến toàn cục

echo "Giá trị của biến toàn cục trước khi gọi hàm là $num ";

//Gọi hàm

unsetGlobal ();

// In lại biến toàn cục

echo "Giá trị của biến toàn cục sau khi gọi hàm là Giá trị của biến toàn cục sau khi gọi hàm là Giá trị của biến toàn cục sau khi gọi hàm là $num";

?>

đầu ra

Đầu ra sau sẽ xuất hiện sau khi thực hiện đoạn mã trên. Theo đầu ra, biến toàn cục chưa bị hủy bên trong hàm

Làm cách nào để bỏ đặt biến toàn cục trong PHP?

Ví dụ-3. Đặt lại Biến toàn cục với Mảng GLOBALS

Cần có mảng GLOBALS để hủy đặt các biến toàn cục bên trong hàm. Tạo một tệp PHP với tập lệnh sau để bỏ đặt biến toàn cục bên trong một hàm bằng cách xác định biến toàn cục với mảng GLOBALS trong hàm unset(). Hàm isset() đã được sử dụng trong tập lệnh để xóa thông báo nóng lên sau khi xóa biến




//Khai báo một biến số nguyên

$num = 25;


/*

Khai báo hàm kiểm tra

hàm unset() như thế nào

hoạt động cho biến toàn cục bên trong hàm

với mảng GLOBALS[]

*/


function unsetGlobal ()

{

    bỏ đặt($GLOBALS['num']);

}


//In biến toàn cục

echo "Giá trị của biến toàn cục trước khi gọi hàm là $num ";

//Gọi hàm

unsetGlobal ();

if(isset($num))

{

    //In biến toàn cầu sau khi không đặt

    echo "Giá trị của biến toàn cục sau khi gọi hàm là Giá trị của biến toàn cục sau khi gọi hàm là Giá trị của biến toàn cục sau khi gọi hàm là $";

}

khác

    echo "Biến đã hủy. "Biến đã hủy. "Biến đã hủy. "

?>

đầu ra

Đầu ra sau sẽ xuất hiện sau khi thực hiện đoạn mã trên

Làm cách nào để bỏ đặt biến toàn cục trong PHP?

Ví dụ-4. Đặt lại Biến Truyền theo Tham chiếu

Tạo một tệp PHP với tập lệnh sau để kiểm tra cách loại bỏ biến được truyền theo tham chiếu trong hàm. Một biến chuỗi đã được định nghĩa và truyền theo tham chiếu trong hàm có tên là tổ hợpString(). Biến đã bị xóa sau khi nối một giá trị chuỗi bên trong hàm. Biến đã in trước và sau khi gọi hàm và bên trong hàm sau khi xóa



/*Khai báo hàm kết hợp các giá trị chuỗi và kiểm tra

cách biến chuỗi hoạt động sau

bỏ đặt biến tham chiếu bên trong hàm

*/


hàm chuỗi kết hợp (&$strVal)

{

    //Kết hợp giá trị chuỗi

    $strVal . = " Thế giới";

    //Bỏ đặt biến

    bỏ đặt($strVal);

    //Kiểm tra xem biến có được đặt hay không

    if(isset($strVal))

      echo "Giá trị của biến là $strVal
"
;

    khác

        echo "Biến hiện không được xác định. """;

}


//Khởi tạo một biến chuỗi

$strVal = "Xin chào";

//In biến

echo "Giá trị của biến là $strVal <;


//Gọi hàm

combineString ($strVal);

// In lại biến sau khi gọi hàm

echo "Giá trị của biến là $strVal <;

?>

đầu ra

Đầu ra sau sẽ xuất hiện sau khi thực hiện đoạn mã trên. Đầu ra cho thấy biến cục bộ đã bị xóa và biến toàn cục chứa giá trị đã sửa đổi

Làm cách nào để bỏ đặt biến toàn cục trong PHP?

Ví dụ-5. Đặt lại biến tĩnh

Tạo một tệp PHP với tập lệnh sau để kiểm tra biến tĩnh hoạt động như thế nào sau khi loại bỏ nó bên trong hàm. Hàm unsetStaticVariable() đã được gọi ba lần để kiểm tra đầu ra của các biến tĩnh



/*

Khai báo một hàm để kiểm tra mức độ tĩnh

biến hoạt động sau khi bỏ cài đặt

biến bên trong hàm

*/


hàm unsetStaticVariable ()

{

    //Khởi tạo một biến tĩnh

   static $count = 1;

    //Tăng biến thêm 1

    $count++;

    echo "Giá trị của bộ đếm trước đó chưa được đặt. Giá trị của bộ đếm trước đó chưa được đặt. Giá trị của bộ đếm trước đó chưa được đặt. $count ";

    //Hủy biến

    bỏ đặt($count);

    //Kiểm tra xem biến có được đặt hay không

    nếu(isset($counter))

      echo "Giá trị của bộ đếm hiện làGiá trị của bộ đếm hiện làGiá trị của bộ đếm hiện là $counter
"
;

    khác

      echo "Biến hiện không được xác định. "Biến hiện không được xác định. "Biến hiện không được xác định. ";

}


//Gọi hàm nhiều lần

unsetStaticVariable ();

unsetStaticVariable ();

unsetStaticVariable ();

?>

đầu ra

Đầu ra sau sẽ xuất hiện sau khi thực hiện đoạn mã trên

Làm cách nào để bỏ đặt biến toàn cục trong PHP?

Phần kết luận

Các ví dụ khác nhau về hàm unset() đã được trình bày trong hướng dẫn này để bỏ đặt các biến toàn cục, tham chiếu và tĩnh sẽ giúp người dùng PHP biết đúng mục đích của hàm này

Cái gì được sử dụng để bỏ đặt một biến trong PHP?

Hàm unset() là một hàm có sẵn trong PHP được sử dụng để bỏ đặt một biến đã chỉ định.

Làm cách nào để bỏ đặt đối tượng trong PHP?

Một đối tượng là một thể hiện của một lớp. Sử dụng hàm unset() của PHP , chúng ta có thể xóa một đối tượng. Như vậy với hàm unset() của PHP đặt đối tượng mà chúng ta muốn xóa làm tham số cho hàm này thì chúng ta có thể xóa đối tượng này.

Giải phóng bộ nhớ với PHP unset() hay $var null thì còn gì tốt hơn?

Bạn có thể giải phóng bộ nhớ/thu nhỏ bộ nhớ nhanh hơn, nhưng điều này có thể đánh cắp các chu kỳ CPU khỏi mã thực sự cần chúng sớm hơn, dẫn đến thời gian thực thi tổng thể lâu hơn. Có vẻ như $a = null nhanh hơn một chút so với đối tác unset() của nó . cập nhật một mục trong bảng biểu tượng có vẻ nhanh hơn việc xóa nó.

PHP unset hoạt động như thế nào?

unset() hủy các biến đã chỉ định . Hành vi của unset() bên trong một hàm có thể khác nhau tùy thuộc vào loại biến mà bạn đang cố hủy. Nếu một biến toàn cầu hóa không được đặt () bên trong một hàm, thì chỉ biến cục bộ bị hủy.