PHP OOP fejl...

Tags:    php

<< < 12 > >>
Hej allesammen!
Jeg er gået lidt ned i OOP når det gælder PHP.
Jeg er dog rendt ind i et problem: min kode virker ikke.. :S
Kan virkelig ikke spotte fejlen, men håber en af jer måske kan..
Kode:
Fold kodeboks ind/udKode 


Ved godt at det er en større samling, men det er fordi jeg virkelig har prøvet at skrive den flotteste syntax jeg har prøvet...

Vil egentlig også gerne have noget feedback på min opbygning af klassen, og lidt om min syntax.
Håber i kan hjælpe!
~Jakob



Indlæg senest redigeret d. 17.05.2008 00:01 af Bruger #11328
Jeg har ændret din konstruktør fra function Garage til
public void __construct

Her er den ændrede kode
Fold kodeboks ind/udKode 


Edit: Har lavet en lille ændring mere.



Indlæg senest redigeret d. 17.05.2008 00:24 af Bruger #6559
Koden virker bare desværre ikke.. :)
(Og hvorfor den avancerede funktion? og hvorfor bruger du array_push??)



Du skriver koden virker ikke? Hvad virker ikke? Hvis du lige ville udspecificere hvad der ikke virker, så er det også nemmere at hhjælpe :)



Jeg kan desværre ikke sige hvad der ikke virker da en PHP side jo (som bekendt) går fuldstændigt white-out hvis sntaxen er forkert... :(



Der er fejl i Garage::getErrors(). Du kan ikke returnere "$errors[]". Det er det samme som at du kan heller ikke skrive "$t = $errors[];" hvilket heller ikke giver nogen mening og derfor ikke muligt.
Kan ikke lure andre fejl, uddyb.

Garage::Garage() er egentlig ikke særlig pænt for min smag og det kræver at man ændrer to steder, hvis man pludselig ændrer navnet på klassen.

function __construct() {} er en "magic function" og kaldes på samme vis som Garage::Garage()

"var" er udgået og erstattet med "public", "private" og "static".

Koden er sådan set ganske pæn og overskuelig, alt hvad du mangler er kommentarer.
Fold kodeboks ind/udKode 


For at være avanceret kan du jo lave "Cars" om til klasser også.
så kan lege med ting som:
Fold kodeboks ind/udKode 




Jeg kan desværre ikke sige hvad der ikke virker da en PHP side jo (som bekendt) går fuldstændigt white-out hvis sntaxen er forkert... :(


Ah, det passer ikke helt. Når du laver debug kunne du lave følgende til sidst i scriptet:

Fold kodeboks ind/udKode 




Super!
Det virker:
Fold kodeboks ind/udKode 


Nogle syntaxfejl?

(og tak for ideen med det med at lave cars om til en klasse... Det vil jeg prøve!

(BTW: Hvorfor skriver du: @PARAM før du beskriver en variabel i kommentarene?)



Indlæg senest redigeret d. 17.05.2008 00:41 af Bruger #11328
Jeg kan desværre ikke sige hvad der ikke virker da en PHP side jo (som bekendt) går fuldstændigt white-out hvis sntaxen er forkert... :(


Ah, det passer ikke helt. Når du laver debug kunne du lave følgende til sidst i scriptet:

Fold kodeboks ind/udKode 


Debug? Hvad mener du med at "lave debug"... Er det et PHP-mode? kender self. godt ordet, men lyder da lidt spøjst.. :P



Når du debugger så kigger du jo efter fejl. Så kan man altid lave et print "noget tekst"; for at se om funktionen udskriver det forventede :)



Nej... Hvis der bare er én fejl i en PHP kode virker HELE scriptet ikke.. :) Nu taler jeg syntax fejl, ikke fx regnefejl :)



<< < 12 > >>
t