dochamburg
Mitglied
Salvete!
Habe folgendes Problem: Habe ein Script, welches einen Ordner ausliest und die ausgelesenen Dateien auflistet und in eine *.xml schreibt. Funktioniert auch prima, nur haette ich gern noch eine aufsteigende Nummerierung dazu, damit ich die nicht per Hand hinterher einfügen muss.
Hier das Script:
Und genau folgende Zeile
würde ich gerne so modifizieren, dass aufsteigende Zahlen aus gegeben werden, also in der xml nachher folgendes steht:
Lässt sich das bewerkstelligen?
Vielen Dank vorab!
dochamburg
Habe folgendes Problem: Habe ein Script, welches einen Ordner ausliest und die ausgelesenen Dateien auflistet und in eine *.xml schreibt. Funktioniert auch prima, nur haette ich gern noch eine aufsteigende Nummerierung dazu, damit ich die nicht per Hand hinterher einfügen muss.
Hier das Script:
PHP:
<?php
function ordnerinhalt($ordner='./004588/')
{
$content = "";
$handle = opendir($ordner);
while ($file = readdir ($handle)) {
if($file{0} != '.') { //Versteckte Dateien nicht anzeigen
if(is_dir($ordner.'/'.$file)) {
$folderArray[] = $file;
} else {
$fileArray[] = $file;
}
}
}
closedir($handle);
//Erst die Ordner ausgeben
if(isset($folderArray)) {
asort($folderArray);
foreach($folderArray as $row) {
$content .= '<contentobject'."\n";
$content .= 'externalid="beispielname_pics01"'."\n";
$content .= 'contenttype="Image"'."\n";
$content .= 'update-mediafolder="true"'."\n";
$content .= 'crop="false"'."\n";
$content .= 'name="contentpics"'."\n";
$content .= 'generation="false">'."\n";
$content .= '<!-- ~ --><names>'."\n";
$content .= '<!-- ~~~ --><name language="DE">pics</name>'."\n";
$content .= '<!-- ~~~ --><name language="EN">pics</name>'."\n";
$content .= '<!-- ~ --></names>'."\n";
$content .= '<age-restriction>16</age-restriction>'."\n";
$content .= '<!-- ~ --><country-restriction>'."\n";
$content .= '<!-- ~~~ --><country>DE</country>'."\n";
$content .= '<!-- ~~~ --><country>US</country>'."\n";
$content .= '<!-- ~~~ --><country>AT</country>'."\n";
$content .= '<!-- ~ --></country-restriction>'."\n";
$content .= '<mediafolder name="'.$ordner.'/'.$row.'"></mediafolder>'."\n";
$content .= '<mediaobjects>'."\n";
$content .= ordnerinhalt($ordner.'/'.$row) ."\n"; //rekursive Funktion
$content .= '</mediaobjects>'."\n";
$content .= '</contentobject>'."\n";
}
}
//Dann die Dateien ausgeben
if(isset($fileArray)) {
asort($fileArray);
foreach($fileArray as $row) {
$content .= '<!-- ~~~ --><mediaobject name="'.$ordner.'/'.$row.'" />'."\n"; //Dateien verlinken
}
}
return $content;
}
$fp = fopen('import-descriptor.xml', 'w');
fwrite($fp, ordnerinhalt());
fclose($fp);
?>
Und genau folgende Zeile
Code:
$content .= 'externalid="beispielname_pics01"'."\n";
Code:
<contentobject
externalid="beispielname_pics01"
contenttype="Image"
update-mediafolder="true"
crop="false"
name="contentpics"
generation="false">
[..]
<mediafolder name="004558/beispielname_pics/pic01"></mediafolder>
<mediaobjects>
<!-- ~~~ --><mediaobject name="004558/beispielname_pics/pic01/33001.jpg" />
</mediaobjects>
</contentobject>
<contentobject
externalid="beispielname_pics02"
contenttype="Image"
update-mediafolder="true"
crop="false"
name="contentpics"
generation="false">
usw....
Lässt sich das bewerkstelligen?
Vielen Dank vorab!
dochamburg