/[cvs]/nfo/php/libs/org.netfrag.glib/Data/Deep.php
ViewVC logotype

Contents of /nfo/php/libs/org.netfrag.glib/Data/Deep.php

Parent Directory Parent Directory | Revision Log Revision Log


Revision 1.3 - (show annotations)
Tue Mar 11 01:12:54 2003 UTC (21 years, 4 months ago) by joko
Branch: MAIN
CVS Tags: HEAD
Changes since 1.2: +24 -1 lines
+ fixed metadata for phpDocumentor

1 <?
2 /**
3 * This file contains the DataSource::Locator class.
4 *
5 * @author Andreas Motl <andreas.motl@ilo.de>
6 * @package org.netfrag.glib
7 * @name Data::Deep
8 *
9 */
10
11
12 // -------------------------------------------------------------------------
13 // $Id: Deep.php,v 1.2 2003/03/03 21:28:11 joko Exp $
14 // -------------------------------------------------------------------------
15 // $Log: Deep.php,v $
16 // Revision 1.2 2003/03/03 21:28:11 joko
17 // updated comments
18 //
19 // Revision 1.1 2003/02/03 14:51:44 joko
20 // + initial commit
21 // + refactored from flib/...
22 //
23 // -------------------------------------------------------------------------
24
25
26 // rename to Data::Hash::Addressable???
27
28
29 /**
30 * --- Data::Deep
31 *
32 * @author Andreas Motl <andreas.motl@ilo.de>
33 * @package org.netfrag.glib
34 * @subpackage Data
35 * @name Data::Deep
36 *
37 */
38 class Data_Deep {
39
40 var $payload;
41
42 function Data_Deep(&$payload) {
43 $this->payload = &$payload;
44 }
45
46 function &get($attr) {
47 $evalstr = 'return $this->payload' . $this->_getHKR($attr) . ';';
48 $val = eval($evalstr);
49 return $val;
50 }
51
52 function set($attr, $val) {
53 //$evalstr = '$this->payload' . $this->_getHKR($attr) . ' = \'' . $val . '\';';
54 $evalstr = '$this->payload' . $this->_getHKR($attr) . ' = $val;';
55 eval($evalstr);
56 }
57
58 function getPayload() {
59 return $this->payload;
60 }
61
62 function _getHKR($key) {
63 $attr_arr = split('\.', $key);
64 $attr_hkr = '["' . join('"]["', $attr_arr) . '"]';
65 return $attr_hkr;
66 }
67
68 }
69
70 ?>

MailToCvsAdmin">MailToCvsAdmin
ViewVC Help
Powered by ViewVC 1.1.26 RSS 2.0 feed