- 論壇徽章:
- 0
|
謝謝!上面有解說,要是給出例子就更直觀了。
toString ( [ norecurse ] )
Output (and all children) the node to a string. Doesn't process children if the norecurse option is a true value.
- sub toString {
- my ($self, $norecurse) = @_;
-
- my $string = '';
- if (! $self->[node_name] ) {
- # root node
- return join('', map { $_->toString($norecurse) } @{$self->[node_children]});
- }
-
- $string .= "<" . $self->[node_name];
- $string .= join('', map { $_->toString } @{$self->[node_namespaces]});
- $string .= join('', map { $_->toString } @{$self->[node_attribs]});
-
- if (@{$self->[node_children]}) {
- $string .= ">";
-
- if (!$norecurse) {
- $string .= join('', map { $_->toString($norecurse) } @{$self->[node_children]});
- }
-
- $string .= "</" . $self->[node_name] . ">";
- }
- else {
- $string .= " />";
- }
-
- return $string;
- }
復制代碼
|
|