Ú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
- Montech King 95 Pro házikó egy halom ventivel, esetleg Thermalright AIO-val
- Csere is érdekel! Canon C100 super 35mm cinema kamera +Canon EF-S 18-135 obi +Power Zoom adapter
- HP OMEN 17" Gamer laptop , RTX 4060 , R5 8645HS , 16GB DDR5
- Eladó egyben 17 db HDD
- szinte új 11 hüvelykes iPad Pro (M4) (2024)Wi-Fi 256GB silver ezüst Smart Cover Apple 3 év garancia
- Csere-Beszámítás! Asztali számítógép játékra! I5 14400F / RX 6900 XT 16GB / 32GB DDR5 / 1TB SSD
- BESZÁMÍTÁS! NZXT Kraken Elite 360 RGB vízhűtés garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone i5 13400F 32/64GB RAM RX 7800 XT 16GB GAMER PC termékbeszámítással
- Azonnali készpénzes nVidia RTX 2000 sorozat videokártya felvásárlás személyesen / csomagküldéssel
- Honor 200 256GB Kártyafüggetlen 1Év Garanciával
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Promenade Publishing House Kft.
Város: Budapest