~~NOTOC~~ ---json { "title":"node()", "description":"ノードテーブルから指定するノードのデータ領域を返します" } --- \\ ====== node() ======
==== 説明 ==== ノードテーブルから指定するノードのデータ領域を返します。\\ ==== 構文 ====~~DISCUSSION~~$node_data = node( nodeno );
==== 引数 ====nodeno : ノード番号
==== 返り値 ====node_data : データ領域 ( データ型: ハッシュリファレンス ) = { name => value, ... }
==== 備考 ==== 取得したデータ領域は単なるハッシュなので、\\node( $nodeno )->{'name'} = $value; # 値の追加・更新 my $value = node( $nodeno )->{'name'}; # 値の参照 delete( node( $nodeno )->{'name'} ); # 設定名の削除
とすれば、追加、参照、削除することができます。\\ 保存できるデータのデータ型は、ハッシュに代入できるものは全て可能です。\\node( nodeno )->{'Module'} = new Module(); # オブジェクト node( nodeno )->{'Array'} = [ 1, 2, 3 ]; # 配列 node( nodeno )->{'Code'} = sub { undef }; # コード
ノードテーブルはBBS.pm自身が使用するデータも保存されるため、 誤って削除したり書き換えたりしないよう、十分注意する必要があります。\\ システムが使用するデータは次の通りです。\\ ^ 設定名 ^ 説明 ^ | __Socket | ソケットオブジェクト | | AppWork | AppWorkハンドラ | | Disconnected | 切断フラグ |データを安全に管理する方法として、パラメータを管理するためのモジュールを使用したり、パラメータ専用の設定名を設け、その中で管理するなどがあります。\\ BIG-Modelアプリケーションでは、[[projects:big-model:docs:system:param|パラメータ管理モジュール(Param)]]を使用しています。詳しくは[[projects:big-model:docs:system:param|こちら]]をご覧ください。\\