Jens Kristian Søgaard skrev:
> Jeg er tilgengæld lidt usikker på, hvad dit spørgsmål er?
Ja, det forstår jeg godt. Jeg var mere frustreret end klar i
hovedet da jeg skrev det. Jeg opdagede senere at mit primære
problem var at '\n' er to tegn, mens jeg jo mente "\n" som er et
linjeskift.
Imidlertid har du givet mig nogle nyttige kommentarer, så det er
jo fint nok.
> Her vil jeg foreslå dig at droppe brugen af globale variable. Det er
> sjældent pænt.
Det er en gammel uvane som jeg ikke har aflagt helt. Det er
tanken om at det er mere effektivt at et element er globalt
kendt, frem for at det skal overføres til hver eneste funktion,
der gør at jeg ikke slipper vanen helt.
> I stedet:
> function red_initfile( $filnavn )
> og kald den med:
> read_initfile( "mininitfil.txt" );
Ja, filnavnet skal ikke bruges mere, så det kan jeg nemt
afglobalisere, men de forskellige arrays skal bruges ved flere
sammentællinger. Er den rigtige måde så at overføre dem som
parametre hver gang?
>> $by = new Bytype();
> Du skriver ikke rigtigt om du arbejder med PHP4 eller PHP5.
Næ, for det er ikke noget jeg egentlig forholder mig til. Jeg kan
se at det p.t. er version 4 jeg har adgang til.
> Arbejder du med PHP4 skal du være opmærksom på referencer. Dvs.
> det skal se ud nogenlunde som følger:
> $by =& new Bytype();
Tak for noten. Det vil jeg så være opmærksom på.
>> for ($nr=0; $nr<count($filecontent); $nr+=1) {
> > $by->navn=$filecontent[$nr];
> Det er lidt unormal måde at løbe igennem et array på.
Ja. Python har ikke implementeret ++-notationen, og det var det
der foresvævede mig. Nu har jeg rettet det.
> En anden måde at gøre det på kunne være at skrive:
> while( list($nr, $str) = each($filecontent) ) {
> $by->navn = $str;
De der specielle PHP-gennemløb er jeg ikke fortrolig med, så det
er fint at få et tip om det.
> Noget helt andet er, at det kunne være en idé at lave en set-funktion:
> $by->setName( $str )
Det vil jeg overveje.
> $by->navn = $str
>> array_push($byer,$by);
> Denne linje virker lidt mystisk, da du kun new'er et enkelt
> Bytype-objekt, men pusher det på listen mange gange.
Det er måske også forkert (det kommer an på hvordan PHP håndterer
sådan et push), men nu har jeg også ændret det til at jeg bare
pusher new Bytype("Bynavn"), og jeg har lavet den nødvendige
konstruktør - altså uden en temp-variabel.
--
Bertel
http://bertel.lundhansen.dk/ Fiduso:
http://fiduso.dk/