Re: advise on simplfying session usage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



In a session context with a lot of session vars, you can use magic methods __set and __get :

class s{
	private function __set($property, $value){
		$_SESSION[$property] = $value ;
	}

	private function __get($property){
		return $_SESSION[$property] ;
	}
}

and work with session like an object with the same access :

$s->one = 'one';
$s->oneTwo = array('one', 'two');

echo $s->one;

var_dump($s->oneTwo);

Le 13 janv. 2012 à 04:53, mail.pmpa a écrit :

> When I have many calls to $_SESSION I do:
> 
> $s = &$_SESSION;
> $s['foo'] = 'bar';
> 
> echo $s['foo'];  //bar
> 
> -----Original Message-----
> From: Haluk Karamete [mailto:halukkaramete@xxxxxxxxx] 
> Sent: sexta-feira, 13 de Janeiro de 2012 01:17
> To: php-general@xxxxxxxxxxxxx
> Subject:  advise on simplfying session usage
> 
> Again, coming from ASP background, I'm trying to minimize the typing for
> most needed functionalities..
> 
> in asp, to set a session var, you go <%session("age")=90%> and to output it,
> you just go <%=session("age")%>
> 
> in php, you've got to _SESSION['age']=90. that's a lot of keyboarding, lots
> of double key strokes and the entire word session has to be uppercase.
> of course, if you use an IDE and you get fast at it, this may not be an
> issue but I wanted to simplify it anyway.
> 
> so the plan is this
> 
> <?php
> 
> _s("age",43) //set the session var age to 43 echo _s("age") //outputs the
> value
> 
> ?>
> 
> To achieve this; I wrote this preliminary function;
> 
> function _s($var,$val = "r4r53d323,9e809023890j832e@14fdsffdd")
> {
> 	if ($val == "r4r53d323,9e809023890j832e@14fdsffdd")
> 	{return $_SESSION[$var];}
> 	else
> 	{$_SESSION[$var] = $val;}
> }
> 
> Now, what's that number you ask!... it's just a value which I figured I
> would never end up in a real app.
> It's just a way for me to use default argument of the function so I can call
> _s function with 1 or 2 arguments.
> 
> Can this be done a better way? How do you use _s function with 1 or 2
> arguments so in 1 arg mode, you can use it as a set, and in 2 arg mode, you
> use it as a way to return val.
> 
> Is func_get_args route the only way? performance wise which one would
> better?
> 
> 
> 
> 
> -- 
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php




[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux