Array vergleichen
tom_har
- php
Hallo zusammen
Ich habe zwei Array die so aufgebaut sind:
Array ( [0] => 4303Metzlerhighb.eps [1] => 43Bahnhighb.tif [2] => 43bangkokairways1highb.tif [3] => 43Tuktukhighb.eps [4] => Kopie von msvci70.dll [5] => msvci70.dll [6] => SwissReeinsp.pdf )
und
Array ( [0] => 4303Metzlerhighb.jpg [1] => 43Bahnhighb.jpg [2] => 43bangkokairways1highb.jpg [3] => 43Tuktukhighb.jpg [4] => SwissReeinsp.jpg )
Im ersten Array sind die Werte 4 und 5 vorhanden im zweiten Array aber nicht mehr.
Nun möchte ich diese zwei Werte ausgeben. Alle anderen Einträge sind bis auf die extension gleich. Diese müssen nicht ausgegeben werden.
Hat jemand eine Idee, wie ich diese Array vergleichen kann. Problem ist ja, dass die extensions nicht überall gleich sind.
Danke für jeden Tipp
Gruss
tom
Grüße,
mit substr($wert,0,-4)
schneidest du extensions weg
steck einfach beide arrays in ein for oder forecach durchlauf (je nachdem ob du weisst wlcher array der vollständige ist)
dann nimmst du den wert, und vergleihst den mit dem (ebenfalls um 4 letzte zeichen) beschittenem wert aus dem 2en array mit gleichem key. sind diese NICHT gleich, so kopierst du den "richtigen" wert in ein 3es array denn du dir am schluss über foreach ausgeben lässst
MFG
bleicher
Grüße,
mit substr($wert,0,-4)
uns was mache ich dann, wenn die extension mal vier zeichen lang ist zB. tiff oder jpeg?
schneidest du extensions weg
wenn ich ja die extension wegschneide, dann kann ich sie am schluss nicht mehr anzeigen oder?
Gruss
tom
Grüße,| | Grüße,
mit substr($wert,0,-4)
uns was mache ich dann, wenn die extension mal vier zeichen lang ist zB. tiff oder jpeg?
strpos, pnkt poistionermitteln, stringlänge minus diese rein in subst, ODER komlexe regexp da kan ich aber nicht weiterhelfen
schneidest du extensions weg
wenn ich ja die extension wegschneide, dann kann ich sie am schluss nicht mehr anzeigen oder?
doch - wenn du den wert zum vergleich in eine variable kopierst, diese ebshcneidest, im fall der fälle aber wieder den wert aus dem aray nimmst
Gruss
tom
MFG
bleicher
strpos, pnkt poistionermitteln, stringlänge minus diese rein in subst, ODER komlexe regexp da kan ich aber nicht weiterhelfen
mit strpos hats schon mal geklappe, danke
schneidest du extensions weg
wenn ich ja die extension wegschneide, dann kann ich sie am schluss nicht mehr anzeigen oder?doch - wenn du den wert zum vergleich in eine variable kopierst, diese ebshcneidest, im fall der fälle aber wieder den wert aus dem aray nimmst
aber jetzt habe ich ja immer noch zwei array ohne endungen. konnte diese vergleichen und die differenz ausgeben. kannst du mir nochmals langsam erklären, wie ich die extension nun wieder anhängen kann?
danke und gruss
tom
Hi,
aber jetzt habe ich ja immer noch zwei array ohne endungen. konnte diese vergleichen und die differenz ausgeben. kannst du mir nochmals langsam erklären, wie ich die extension nun wieder anhängen kann?
naja an Deiner Stelle würd ich die Originalarrays nich manipulieren sondern lediglich jeweils ein temporäres anlegen, wobei für den Vergleich is dies mit ein wenig Hirnschmalz auch nich mehr nötig!! Ich würde aber auf alle Fälle den Index Deiner gesuchten Einträge ermitteln und schon kommst Du wieder an die Werte im Array ran, die Du auch haben möchtest, so z.B.
Pseudocode:
for ( i = 0, i < array_len, i++ )
{
if ( teilstring ( array1 [i] ) == teilstring (array2 [i] )
gibmir i
}
Grüße
schneidest du extensions weg
wenn ich ja die extension wegschneide, dann kann ich sie am schluss nicht mehr anzeigen oder?
danke schön hat sich erleidgt. mit einigem basteln und so ging es nun...recht herzlichen dank für den input!
Gruss
tom