You are here: Re: =& when creating new object « PHP Programming Language « IT news, forums, messages
Re: =& when creating new object

Posted by gosha bine on 09/24/07 23:58

Michael Fesser wrote:
> .oO(gosha bine)
>
>> Michael Fesser wrote:
>>> No! References have their uses, even in PHP5. You don't need them for
>>> objects anymore, but in many other cases they can still be necessary.
>> I can't think of any situation where references would be necessary or at
>> least useful. Would you care to provide some examples?
>
> Let's say I have a structure of nested arrays, like a tree. For
> convenience reasons I want to access a particular element just by giving
> the "path" to it, like "first level/second level/third level". Now the
> access function has to tokenize the string and walk down the array tree.
>
> If I would just want to read the value of a particular element, I would
> not need any references at all, copies would be fine. But if I want to
> change the value, it has to be done in the original array. So the access
> function has to keep track of where it actually is in the array - it
> always has to point to the current element while walking down the tree.
>

Well, for this particular task (and if, for some reason, you have to
reinvent the DOMDocument wheel) the code can look like this:



class node {
protected $name;
protected $value;
...
}

$doc = new node('html');
$doc->append('body')->append('div')->append('span');

$doc->find_node('/body/div/span')->set_value('hello');
$doc->replace_node('/body/div/span', new node('h1'));




I still fail to see how references can be useful here.


--
gosha bine

extended php parser ~ http://code.google.com/p/pihipi
blok ~ http://www.tagarga.com/blok

 

Navigation:

[Reply to this message]


Удаленная работа для программистов  •  Как заработать на Google AdSense  •  England, UK  •  статьи на английском  •  PHP MySQL CMS Apache Oscommerce  •  Online Business Knowledge Base  •  DVD MP3 AVI MP4 players codecs conversion help
Home  •  Search  •  Site Map  •  Set as Homepage  •  Add to Favourites

Copyright © 2005-2006 Powered by Custom PHP Programming

Сайт изготовлен в Студии Валентина Петручека
изготовление и поддержка веб-сайтов, разработка программного обеспечения, поисковая оптимизация