PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : versionen zuordnen


Alfred
10.12.2003, 14:02
irgendwie hab ich nen knoten im hirn..
ich bekomm dad ding nich fehlerfrei zum laufen..

wo issen da zum henker der fehler ? :mauer: :mauer: :mauer: :mauer:

ich will hier überprüfen ob ein datum in einen zeitraum
von einer version fällt.


legende :
all_version_array[0][0] = versions nummer
all_version_array[0][1] = datum

bug_create_date = datum



if(sizeof($all_versions_array)<1)
{
//return false;
return 'fehler';
}
else
{
# vergleiche datum des bug mit datum der versionen
$versions_date=$all_versions_array[0][1];
if($bug_create_date<=$versions_date)
{
return $all_versions_array[0][0];
}
else
{
while (true)
{
if($bug_create_date>$versions_date)
{
return $all_versions_array[--$i][0];
}
else
{
$versions_date=$all_versions_array[++$i][1];
}
if($i>sizeof($all_versions_array))return false;
}#while
}#ifelse
}#else


bin für jede hilfe dankbar.
mfg Alfred


cisab
10.12.2003, 14:09
Hi,

kann es sein das Du Äpfel mit Birnen vergleichst ;)
Laut deiner Legende steht in all_version_array[0][0] das Datum,
im Code vergleichst Du das $bug_create_date aber mit all_version_array[0][1] und das ist laut Legende die Versionsnummer ...

HTH
Cisab

Alfred
10.12.2003, 14:13
ups verzeihung legende war falsch
habs editiert.. da siehste ma wie konfus ich schon bin lol

cisab
10.12.2003, 14:37
Hi,
ist das Ergebnis von while (true) nicht ne Endlosschleife???
Oder wie ist die Reaktion, Fehlermeldung wenn es denn eine gibt. Es geht nicht ist leider nicht sehr aussagefähig ...

HTH
Cisab

Alfred
10.12.2003, 14:55
jap das ist ne beabsichtigete endlosschleife die durch die returns abgebrochen wird..
(ok nich sehr schön aber geht)

wenn fehler -> false(bool)
wenn true -> schwerer logischer fehler(bool)

ansonsten rückgabe der versionsnummer(string)


ok ich lass das ding laufen ich bekomm folgende ausgabe :

version:
0.0.2
0.0.2
0.0.1
0.0.1
0.0.1
0.0.1
0.0.1
0.0.1

wobei aber definitiv mind. 4 verschiedene versionen
angezeigt werden müssten.

wobei das versionsarray folgenden inhalt hatte :

0.0.1 datum
0.0.2 datum
0.0.3 datum
0.0.4 datum

machen soller aber das :

bastelcode (auch dreckiger pseudo genannt ;) )

if (01.10.2004<03.10.2003)
gebe versionsnr vor der versionierung 03.10.2003 zurück
ansonsten
nächster versionszeitraum

Alfred
10.12.2003, 16:04
puh .. habs doch aleene hinbekommen..

für alle die evtl. so was gebrauchen können :

if(sizeof($all_versions_array)<1)
{
return false;
}
else
{
# vergleiche datum des bug mit datum der versionen
$versions_date=$all_versions_array[0][1];
if($bug_create_date<$versions_date)
{
return false;
}
else
{
while (true)
{
if($i>sizeof($all_versions_array))
{
if( $all_versions_array[--$i][0])
{
return $all_versions_array[$i][0];
}
else
{
return $all_versions_array[--$i][0];
}
}
else
{
if($bug_create_date<=$versions_date)
{
return $all_versions_array[--$i][0];
}
else
{
$versions_date=$all_versions_array[++$i][1];
}
}#if
}#while
}#ifelse