ID:               39340
 Comment by:       ois at oisnot dot com
 Reported By:      thehub at lofty dot net dot au
 Status:           Open
 Bug Type:         Feature/Change Request
 Operating System: Windows XP
 PHP Version:      4.4.4
 New Comment:

<pre><?php

$currServ = 'test1';
$currDB = 'test2';
$currGroup = 'test3';
$currUser = 'test4';

$server = array();
$server[$currServ][$currDB][$currGroup][$currUser]['access']=4;
$server[$currServ][$currDB][$currGroup][$currUser]['email']='';
$server[$currServ][$currDB][$currGroup][$currUser]['lastlogin']=0;
$server[$currServ][$currDB][$currGroup][$currUser]['projects']=array();
var_export($server);
unset($server);

$server = array();
$server[$currServ][$currDB][$currGroup][$currUser] =array();
$server_curr =& $server[$currServ][$currDB][$currGroup][$currUser];
$server_curr['access']=4;
$server_curr['email'] ='';
$server_curr['lastlogin']=0;
$server_curr['projects']=array();
var_export($server);
unset($server);
unset($server_curr);

$server = array();
$server_curr = array();
$server_curr['access']=4;
$server_curr['email'] ='';
$server_curr['lastlogin']=0;
$server_curr['projects']=array();
$server[$currServ][$currDB][$currGroup][$currUser] = $server_curr;
var_export($server);
?></pre>

Anyway, use objects.


Previous Comments:
------------------------------------------------------------------------

[2007-01-08 19:12:24] thehub at lofty dot net dot au

or perhaps for a long piece of code that would be used a lot. this ugly
rectangle of code for example:

$server[$currServ][$currDB][$currGroup][$currUser]['access']=4;
$server[$currServ][$currDB][$currGroup][$currUser]['email']='';
$server[$currServ][$currDB][$currGroup][$currUser]['lastlogin']=0;
$server[$currServ][$currDB][$currGroup][$currUser]['projects']=array();

becomes

with($server[$currServ][$currDB][$currGroup][$currUser]){
    $['access']=4;
    $['email']='';
    $['lastlogin']=0;
    $['projects']=array()
}

kind of like a function that's created on the fly and then destroyed
when it's finished

------------------------------------------------------------------------

[2006-11-02 02:34:22] thehub at lofty dot net dot au

Description:
------------
Visual Basic has a neat little code trick that I'd like to see in
PHP...
With object1
    .property1="value"
    .function1()
End With
And it can be nested. This is useful if you don't want to create a
variable to hold the return of, e.g. a function call that returns an
array, when you only need it for two or three lines.

Reproduce code:
---------------
with($nested_array['a_very_long_key']){
    $[0]='apples';
    with(function1($[1]->data))
        echo template($['title'],$['content']);
}

// or

with $object1:
    with $->property1:
        function1($['key_of_property1']);
    endwith
endwith



------------------------------------------------------------------------


-- 
Edit this bug report at http://bugs.php.net/?id=39340&edit=1

Reply via email to