Gå til innhold

arv php4 - syntaks


Anbefalte innlegg

jeg har en klasse ting

PHP

<?php

class Ting{

var $tang;

function Ting($t){

$this->tang $t;

}

}

 

// og klassen Tang

class Tang extends Ting{

function Tang($t){

// super? i php 5 er dette parent::__construct()

//alt a)

$this->tang $t;

// alt b)

parent::Ting($t);

}

function change_tang($new){

// alt a)

$this->tang $new;

// alt b)

parent::$tang $new// her får jeg parse-error

}

}

 

$tang = new Tang("tingeling");

$tang->change_tang("bommelom");

print $tang->tang;

?>

 

Jeg innser at php4 objektsyntaks er helt fjernt for meg.

Noen som kan?

 

/

Endret av CruellaDeVille
Lenke til kommentar
Videoannonse
Annonse
Gjest Slettet+142

har du testet om function Tang faktisk virker som en konstruktør?

 

prøv å legge til echo "hei!"; i funksjonen Tang og se om det skrives ut...

 

 

edit: eller får du riktig output når du kjører koden?

Endret av Slettet+142
Lenke til kommentar

jeg fant det ut til slutt.

Men da har jeg enda et spørsmål. Jeg har brukt kvelden til å skrive om opplastingsskriptet fra en tidligere tråd, den var på under 100 linjer. Nå har jeg lagt til en resize-klasse og en multiviewer, men filen er nå over 300 linjer lang. Kan OOP forsvares i sånne tilfeller også?

Lenke til kommentar

OOP kan alltid forsvareres i større prosjekter og komponenter du tenker å gjenbruke på en eller annen måte.

Koder man derimot små script med enkel funksjonalitet og programmering er mer en hobby og funksjonaliteten til scriptet ikke vil trenges igjen så bør man vurdere om ikke "rett fram" koding holder.

Vis du tviler veldig på OOP bør du huske at dette er helt nytt for deg (tror jeg) og at det tar tid (et par måneder, et halvt år, et år. Alt ettersom) og oppdage alle nytteverdiene.

Jeg har sett få erfarne utviklere som bruker PHP til store prosjekter og velger den "gamle" måten, men PHP gir jo brukeren begge mulighetene og mange velger en miks, selv driver jeg mest med større prosjekter og bruker en mer fullblods OOP-løsning

Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...