을 다시 선언 할 수 없습니다. 내 PHP에서 여러 require() 함수를 사용하려고하면이 오류가 발생합니다. 기본적으로 몇 xml 파서 페이지에 액세스하려면 몇 가지 require() 함수를 사용합니다. 이 문제를 해결하는 방법을 아는 사람은 누구입니까? 설명이 적절하지 않은 경우 아래에 말하여 해결하도록 노력하겠습니다. 고맙습니다. 긍정적 인 의견에 감사드립니다. 또한, 나는 PHP를 배우기 만하므로 너무 가혹하지 마십시오. 나는 아래의 코드를 제공 할 것이다. 치명적인 오류 :/응용 프로그램 (이전 /Applications/XAMPP/xamppfiles/htdocs/yournewsflow/news/sports.php:27에 선언)의 startElement()을 재 선언 할 수 없습니다/XAMPP/xamppfiles/htdocs에 여기 PHP : 치명적인 오류 : 어떤 이유에서든 startElement()
오류입니다 라인 (34)Here are the require functions:
<?php
require("news/sports.php");
require("news/political.php");
?>
Here is the xml parser used for a couple pages:
<?php
$tag = "";
$title = "";
$description = "";
$link = "";
$pubDate = "";
$show= 50;
$feedzero = "http://feeds.finance.yahoo.com/rss/2.0/category-stocks?region=US&lang=en-US"; $feedone = "http://feeds.finance.yahoo.com/rss/2.0/category-ideas-and-strategies?region=US&lang=en-US";
$feedtwo = "http://feeds.finance.yahoo.com/rss/2.0/category-earnings?region=US&lang=en-US"; $feedthree = "http://feeds.finance.yahoo.com/rss/2.0/category-bonds?region=US&lang=en-US";
$feedfour = "http://feeds.finance.yahoo.com/rss/2.0/category-economy-govt-and-policy?region=US&lang=en-US";
$insideitem = false;
$counter = 0;
$outerData;
function startElement($parser, $name, $attrs) {
global $insideitem, $tag, $title, $description, $link, $pubDate;
if ($insideitem) {
$tag = $name;
} elseif ($name == "ITEM") {
$insideitem = true;
} }
function endElement($parser, $name) {
global $insideitem, $tag, $counter, $show, $showHTML, $outerData;
global $title, $description, $link, $pubDate;
if ($name == "ITEM" && $counter < $show) {
echo "<table>
<tr>
<td>
<a href=\"".htmlspecialchars($description)."\">".htmlspecialchars($description)."</a>
</td>
</tr>";
// if you chose to show the HTML
if ($showHTML) {
$title = htmlspecialchars($title);
$description = htmlspecialchars($description);
$link = htmlspecialchars($link);
$pubDate = htmlspecialchars($pubDate);
// if you chose not to show the HTML
} else {
$title = strip_tags($title);
$description = strip_tags($description);
$link = strip_tags($link);
$pubDate = strip_tags($pubDate);
}
// fill the innerData array
$innerData["title"] = $title;
$innerData["description"] = $description;
$innerData["link"] = $link;
$innerData["pubDate"] = $pubDate;
// fill one index of the outerData array
$outerData["data".$counter] = $innerData;
// make all the variables blank for the next iteration of the loop
$title = "";
$description = "";
$link = "";
$pubDate = "";
$insideitem = false;
// add one to the counter
$counter++;
}
}
function characterData($parser, $data) {
global $insideitem, $tag, $title, $description, $link, $pubDate;
if ($insideitem) {
switch ($tag) {
case "TITLE":
$title .= $data;
break;
case "DESCRIPTION":
$description .= $data;
break;
case "LINK":
$link .= $data;
break;
case "PUBDATE":
$pubDate .= $data;
break;
}
}
}
// Create an XML parser
$xml_parser = xml_parser_create();
// Set the functions to handle opening and closing tags
xml_set_element_handler($xml_parser, "startElement", "endElement");
// Set the function to handle blocks of character data
xml_set_character_data_handler($xml_parser, "characterData");
// if you started with feed:// fix it to html://
// Open the XML file for reading
$feedzeroFp = fopen($feedzero, 'r') or die("Error reading RSS data.");
$feedoneFp = fopen($feedone, 'r') or die("Error reading RSS data.");
$feedtwoFp = fopen($feedtwo, 'r') or die("Error reading RSS data.");
$feedthreeFp = fopen($feedthree, 'r') or die("Error reading RSS data.");
$feedfourFp = fopen($feedfour, 'r') or die("Error reading RSS data.");
// Read the XML file 4KB at a time
while ($data = fread($feedoneFp, 4096))
//Parse each 4KB chunk with the XML parser created above
xml_parse($xml_parser,$data,feof($feedoneFp))
//Handle errors in parsing
or die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
// Close the XML file
fclose($feedoneFp);
while ($data = fread($feedtwoFp, 4096))
//Parse each 4KB chunk with the XML parser created above
xml_parse($xml_parser,$data,feof($feedtwoFp))
//Handle errors in parsing
or die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
// Close the XML file
fclose($feedtwoFp);
while ($data = fread($feedthreeFp, 4096))
//Parse each 4KB chunk with the XML parser created above
xml_parse($xml_parser,$data,feof($feedthreeFp))
//Handle errors in parsing
or die(sprintfs("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
// Close the XML file
fclose($feedthreeFp);
while ($data = fread($feedfourFp, 4096))
//Parse each 4KB chunk with the XML parser created above
xml_parse($xml_parser,$data,feof($feedfourFp))
//Handle errors in parsing
or die(sprintf("XML error: %s at line %d",
xml_error_string(xml_get_error_code($xml_parser)),
xml_get_current_line_number($xml_parser)));
// Close the XML file
fclose($feedfourFp);
// Free up memory used by the XML parser
xml_parser_free($xml_parser);
?>