Hirdetés
Új hozzászólás Aktív témák
-
Sk8erPeter
nagyúr
válasz
orkester
#10048
üzenetére
Pedig azzal kezdtem a hozzászólásomat, hogy leírtam, melyik foreach blokkon belülre kellene tenned.

Mutatok inkább komplett kódot a tiéd alapján, amiben definiálok egy my_var_export() függvényt, ami tesztelésre kiváló, hogy megnézd, mi az adott változó tartalma, és az adott változó milyen típusú. Nálam most az RSS feedet tartalmazó XML-fájl neve test.xml lesz.
A teszt kedvéért az XML-fájlt kiegészítettem a tiéden felül egy saját <item>-mel is.index.php:
<?php
header('Content-Type: text/html; charset=utf-8');
function my_var_export($variable, $text = '...') {
return '<p>' . $text . ' (type: "' . (gettype($variable)) . '"):</p><pre>' . var_export($variable, TRUE) . '</pre>';
}
$feed_url = 'test.xml';
libxml_use_internal_errors(true);
$RSS_DOC = simpleXML_load_file($feed_url);
if (!$RSS_DOC) {
echo "Failed loading XML\n";
foreach (libxml_get_errors() as $error) {
echo "\t", $error->message;
}
}
foreach ($RSS_DOC->channel->item as $RSSitem) {
$categories = array();
foreach ($RSSitem->category as $category_index => $category) {
$categories[] = $category;
}
$categories_string = implode(',', $categories);
echo my_var_export($categories_string, '$categories_string');
}test.xml:
<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
<channel>
<title>Test RSS feed</title>
<link>http://example.com</link>
<description>Read RSS feed</description>
<item>
<link>
http://www.pafi.hu/_pafi/palyazat.nsf/ervdocidweburlap/490FAC2B35FC9E0EC1257A0F0038DC43
</link>
<title>
<![CDATA[
Milyen kérdést intéznék a miniszterekhez, ha képviselő lennék?
]]>
</title>
<description>
<![CDATA[
A kíirók pályázatot hirdetnek gyermekintézmények számára a Gyermekek Világnapja alkalmából.
]]>
</description>
<category>gyermek, ifjúság</category>
<category>közművelődés</category>
<category>művészet</category>
<category>szociális</category>
<pubDate>Sun, 03 Jun 2012 23:51:34</pubDate>
</item>
<item>
<link>
http://prohardver.hu/tema/php_kerdesek_2/friss.html
</link>
<title>
<![CDATA[
PHP kérdések
]]>
</title>
<description>
<![CDATA[
A Prohardver! lapcsalád PHP-kérdésekkel foglalkozó fóruma.
]]>
</description>
<category>webfejlesztés</category>
<category>programozás</category>
<category>PHP</category>
<category>Prohardver!</category>
<pubDate>Thu, 07 Jun 2012 13:05:05</pubDate>
</item>
</channel>
</rss>==============================================
KIMENET:
$categories_string (type: "string"):
'gyermek, ifjúság,közművelődés,művészet,szociális'
$categories_string (type: "string"):
'webfejlesztés,programozás,PHP,Prohardver!'==============================================
Ebből jól látszik, hogy vesszővel elválasztva bekerült egy változóba az összes kategória.
Természetesen a sima vesszős megoldás nem feltétlenül jó, ha a fent látható módon a "gyermek, ifjúság" egyetlen kategóriának minősül, mert egy vessző mentén történő "szétrobbantásnál" külön kategóriába kerülhet.
Ezért a legjobb lenne szépen szétválasztani, many-to-many relation alkalmazásával az adatbázisban.
Új hozzászólás Aktív témák
- ÚJ ASUS TUF AMD RYZEN 7 5700X GAMER MAX PC 16-32Gb RAM 512GB SSD ÚJ AMD RX9060 XT 16GB 2ÉV GAR!
- Új Gamer PC - Ryzen 7 5700X / RTX 5060 / A520M / 16GB RAM / 1TB M.2 NVMe SSD / 650W
- Apple iPhone 12 Pro Max 128GB, Kártyafüggetlen, 1 Év Garanciával
- ÚJ ASUS TUF AMD RYZEN 7 5700X GAMER MAX PC 16-32Gb RAM 512GB SSD EVGA RTX 3070 8GB 2ÉV GAR!
- Chieftec iArena GPC 600S 600W tápegység
- BESZÁMÍTÁS! MSI B550M R5 5600X 16GB DDR4 512GB SSD RTX 3070 8GB Lian Li Lancool 207 GIGABYTE 750W
- Apple iPhone 14 Plus 256GB / 100%-os akkumulátor / 12 hónap jótállással
- Minden szoftver mellé teljesen audit és NIS2 biztos, jogilag hiteles licencigazolást adunk át!
- Azonnali készpénzes GAMER / üzleti notebook felvásárlás személyesen / csomagküldéssel korrekt áron
- ÁRGARANCIA!Épített KomPhone Ryzen 7 9700X 32/64GB RAM RX 9070 16GB GAMER PC termékbeszámítással
Állásajánlatok
Cég: Laptopszaki Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest



