webForumDet fria alternativet

En lek med strängar?

PHP

0 svar · 160 visningar · startad av SPiN

Medlem sedan mars 20007 896 inlägg
Frågan#1

Gha, jag håller på att bli tokig... Jag vill söka igenom en fil, och om en speciell sträng hittas på en rad ska den lägga in följande rader i en array, ända tills ännu en sträng matchas.

Jag håller på att skapa en egen XML-klass, eftersom att jag inte kan använda mig av varken DOM XML eller den (nästan) inbyggda XML Parsern på min sida...

Någon som kan se var min kod strejkar ur?

function getChildren($theNode) {
	if(!is_string($theNode))
		die("ERROR");

	if($this->xmlFile == "")
		die("ERROR");

	$start = false;
	$stop = false;
	$r = 0;
	$startNode = "<" . trim($theNode) . ">";
	$endNode = "</" . trim($theNode) . ">";
	$xFil = file($this->xmlFile);

	for($i = 0; $i < count($xFil); $i++) {
		if($stop == true)
			break;

		if($endNode == $xFil[$i] && $start == true)
			$stop = true;

		if($start == true)
			$result[$r++] = $xFil[$i];

		if($startNode == $xFil[$i] && $start == false)
			$start = true;

	}

	if(!is_array($result))
		die("ERROR");

	return $result;
}

Arrayen $result skapas aldrig, eftersom att $result[$r++] = $xFil[$i]; aldrig körs... Alltså kan aldrig $startvara true! Men jag har juh matchande element i min XML-fil... :(

Någon som ser något litet fel, som jag inte upptäckt??

------------------
SPiN, bjorne.w@telia.com

-- They pretend to pay me, I pretend to work --

257 ms totalt · 4 externa anrop · v20260731065814-full.a51de22e
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
131 ms — hämta tråd, inlägg och bilagor (db)
124 ms — ändringar (db)