ホームページ バックエンド開発 PHPチュートリアル PHP変数で未設定を破棄する方法_PHPチュートリアル

PHP変数で未設定を破棄する方法_PHPチュートリアル

Jul 20, 2016 am 11:02 AM
php unset void 変数 チュートリアル 使用法 解放された 破壊する

phpチュートリアル変数の破棄とunsetの使用法

unset -- 指定された変数を解放します
説明
void unset (混合変数 [, 混合変数 [, ...]])


unset() は、指定された変数を破棄します。 PHP 3 では、unset() は TRUE (実際には整数値 1) を返すことに注意してください。一方、PHP 4 では、unset() は実際の関数ではなくなり、ステートメントになりました。戻り値がないため、unset() の戻り値を取得しようとすると解析エラーが発生します。

参考PHPマニュアル:


/* これがメモリマップだと想像してください
 ____________________________________________
|ポインタ|値 |変数 |
 -----------------------------------
|   1 |  NULL |         --- |
|   2 |  NULL |         --- |
|   3 |  NULL |         --- |
|   4 |  NULL |         --- |
|   5 |  NULL |         --- |
------------------------------------
いくつかの変数を作成します */
$a=10;
$b=20;
$c=array ('one'=>array (1, 2, 3));
/* メモリを見てください
 _____________________________
|ポインタ|値 |       変数 |
 -----------------------------------
|   1 |  10 |       $a |
|   2 |  20 |       $b |
|   3 |  1 |      $c['one'][0] |
|   4 |  2 |      $c['one'][1] |
|   5 |  3 |      $c['one'][2] |
------------------------------------
してください */
$a=&$c['one'][2];
/* メモリを見てください
 _____________________________
|ポインタ|値 |       変数 |
 -----------------------------------
|   1 |  NULL |       --- |  // $a の値は破棄され、ポインタは解放されます
|   2 |  20 |       $b |
|   3 |  1 |      $c['one'][0] |
|   4 |  2 |      $c['one'][1] |
|   5 |  3 |  $c['one'][2] ,$a | // $a がここに来ました
------------------------------------
してください */
$b=&$a;  // または $b=&$c['one'][2];結果は、「$c['one'][2]」と「$a」が同じポインターにある場合と同じになります。
/* メモリを見てください
 ________________________________
|ポインタ|値 |       変数 |
 --------------------------------------
|   1 |  NULL |       --- | 
|   2 |  NULL |       --- |  // $b の値は破棄され、ポインタは解放されます
|   3 |  1 |      $c['one'][0] |
|   4 |  2 |      $c['one'][1] |
|   5 |  3 |$c['one'][2] ,$a , $b |  // $b がここに来ました
--------------------------------------
次に行うこと */
unset($c['one'][2]);
/* メモリを見てください
 ________________________________
|ポインタ|値 |       変数 |
 --------------------------------------
|   1 |  NULL |       --- | 
|   2 |  NULL |       --- | 
|   3 |  1 |      $c['one'][0] |
|   4 |  2 |      $c['one'][1] |
|   5 |  3 |      $a 、 $b | // $c['one'][2] はメモリでも配列でも破棄されます
--------------------------------------
次に行うこと */
$c['one'][2]=500;    //今は配列になっています
/* メモリを見てください
 ________________________________
|ポインタ|値 |       変数 |
 --------------------------------------
|   1 |  500 |      $c['one'][2] |  // メモリ内の任意の (次の) 空きポインタに配置されるように作成されました
|   2 |  NULL |       --- | 
|   3 |  1 |      $c['one'][0] |
|   4 |  2 |      $c['one'][1] |
|   5 |  3 |      $a 、 $b | //このポインタは使用中です
--------------------------------------
トレイが古いポインタで $c['one'][2] を返し、参照 $a,$b を削除します。  */
$c['one'][2]=&$a;
unset($a);
設定を解除($b);  
/* メモリを見てください
 ________________________________
|ポインタ|値 |       変数 |
 --------------------------------------
|   1 |  NULL |       --- | 
|   2 |  NULL |       --- | 
|   3 |  1 |      $c['one'][0] |
|   4 |  2 |      $c['one'][1] |
|   5 |  3 |      $c['one'][2] | //$c['one'][2] が返され、$a,$b は破棄されます
-------------------------------------- ?>
これが教程のお役に立てば幸いです。


このように便能够说明php の unset はどのように実行されますか

最初に強調しておきたいのは、unset は PHP では関数ではないということです。関数ではないため、戻り値がなく、使用時に unset の戻り値を判断に使用することはできません。

第二に、関数内で unset はローカル変数のみを破棄できますが、グローバル変数は破棄できません。マニュアルの例を見てみましょう。

関数 destroy_foo() {
グローバル $foo;
unset($foo);
}

$foo = 'バー';

destroy_foo();
エコー $foo;
?>

によって返される結果は

です

バー

http://www.bkjia.com/phper/php/37201.htm


http://www.bkjia.com/PHPjc/445335.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/445335.html技術記事 PHP チュートリアル 変数の破棄 unset の使用方法 unset -- 指定された変数を解放します。 説明 void unset (mixed var [,mixed var [, ...]]) unset() は、指定された変数を破棄します。 PHP 3 では、unset(...
) に注意してください。
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP の日付と時刻 CakePHP の日付と時刻 Sep 10, 2024 pm 05:27 PM

Cakephp4 で日付と時刻を操作するには、利用可能な FrozenTime クラスを利用します。

CakePHP データベースの操作 CakePHP データベースの操作 Sep 10, 2024 pm 05:25 PM

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。

CakePHP ファイルのアップロード CakePHP ファイルのアップロード Sep 10, 2024 pm 05:27 PM

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP について話し合う CakePHP について話し合う Sep 10, 2024 pm 05:28 PM

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP バリデータの作成 CakePHP バリデータの作成 Sep 10, 2024 pm 05:26 PM

Validator は、コントローラーに次の 2 行を追加することで作成できます。

CakePHP のロギング CakePHP のロギング Sep 10, 2024 pm 05:26 PM

CakePHP へのログインは非常に簡単な作業です。使用する関数は 1 つだけです。 cronjob などのバックグラウンド プロセスのエラー、例外、ユーザー アクティビティ、ユーザーが実行したアクションをログに記録できます。 CakePHP でのデータのログ記録は簡単です。 log()関数が提供されています

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

See all articles