Reply to Re: [PHP] Array - partical path to the array's path (part 2)

Your name:

Reply:


Posted by "Scott Fletcher" on 09/28/05 22:54

> Aw!!! This is driving me nut...

It still does.... :-)

> get to grips with var_dump() ...

Um.... Interesting thought...

> ($array.$suffix) will never be an array
> $suffix .= "['".$key."']";

Yea, you are correct... I was trying to integrate the coding and stumpled
upon this. It's a mind-twisting task here.

> Problem is I can't use the foreach() loop because it would include the
> numeric value into the string, like <0>blah</0>...
>
> could you rephrase that in english?

The arrays with ['NEWSFEED']['0']['MESSAGE']['1'] where the the two square
brackets with numeric number on the 2nd and 4th square backet is to tell us
how many of that tag name in the 1st and 3rd square bracket there are. If I
am to convert that back into xml then those numeric square bracket isn't
needed. Well, all is not lost. I had scraped it and came up with a new
model. It work better than I thought but not too well. This is testcase
#15..

--snip--
/*
$xml_str = "<NewsFeed>";
$xml_str .= " <Message>";
$xml_str .= " <Comment>";
$xml_str .= " <![CDATA[Comment #1]]>";
$xml_str .= " </Comment>";
$xml_str .= " </Message>";
$xml_str .= " <Message>";
$xml_str .= " <Comment>";
$xml_str .= " <![CDATA[Comment #2]]>";
$xml_str .= " </Comment>";
$xml_str .= " </Message>";
$xml_str .= "</NewsFeed>";
*/

$array = array
(
'NEWSFEED' => array
(
'0' => array
(
'MESSAGE' => array
(
'0' => array
(
'COMMENT' => array
(
'0' => array
(
'VALUE' => 'Comment #1'
)
)
),
'1' => array
(
'COMMENT' => array
(
'0' => array
(
'VALUE' => 'Comment #2'
)
)
)
)
)
)
);

function my_build_xml($xml_tree, $x)
{
global $xml_data;
$x++;

foreach($xml_tree as $key => $value)
{
if(is_array($value)) {
if ($x % 2 != 0) {
$xml_data .= str_repeat(" ",$x)."<".$key.">"."\r\n";
my_build_xml($value, $x);
$xml_data .= str_repeat(" ",$x)."</".$key.">"."\r\n";

if ($key != 0) {
$xml_data .= str_repeat(" ",$x)."<".$key.">"."\r\n";
my_build_xml($value, $x);
$xml_data .= str_repeat(" ",$x)."</".$key.">"."\r\n";
}
} else {
my_build_xml($value, $x);
}
} else {
if ($x % 2 != 0) {
$xml_data .= str_repeat("
",$x)."<".$key.">".$value."</".$key.">"."\r\n";
}
}
}
}

my_build_xml($array, "0");

echo "\n<br><br>\n".$xml_data;
--snip--

The output doesn't match the one in the $array or $xml_str above. So, I'm
now on testcase #16 with some revamping of the code and I'm not having much
luck at it. Maybe you can help if you know of something here... :-)

[Back to original 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

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