Doffar Skrevet 14. juni 2005 Del Skrevet 14. juni 2005 (endret) Hallo, Jeg har et script som starter slik: <?php function inclusion($dir Det scriptet gjør er å inkludere filer. Scriptet funker helt fint. Men det jeg lurer på er hvordan jeg kan legge det i en annen fil og hente akkurat "function inclusion". Og går det an å bruke en fil til å lagre flere "functions"? Er litt ny i php. Mvh Doffar Endret 15. juni 2005 av Doffar Lenke til kommentar
audunr Skrevet 14. juni 2005 Del Skrevet 14. juni 2005 Du kan bruke include(), require() eller include_once() eller require_once(). Forskjellen på include og require er feilnivået dersom den ikke klarer å finne filen. require-feilen er mer alvorlig enn include-feilen. _once()-funksjonene brukes dersom scriptet kan finne på å inkludere den samme filen mer enn én gang. Du kan ha masse funksjoner i hver fil. For dokumentasjon på disse funksjonene, sjekk manualen på php.net. Bare å søke på funksjonsnavnet. MVH Audun Lenke til kommentar
Doffar Skrevet 14. juni 2005 Forfatter Del Skrevet 14. juni 2005 Takk fikk det til nå. Men er det lurt å ha mange funksjoner i en fil med tanke på hurtighet? Lenke til kommentar
ventle Skrevet 15. juni 2005 Del Skrevet 15. juni 2005 Hensikten med funksjoner er jo å gjøre scriptene mindre og lettere å vedlikeholde/oppdatere, fordi om du bruker samme kode mange ganger trenger du bare å skrive og oppdatere den en gang. Antall funksjoner skal være rimelig høyt (minst tresifret) før det kan få betydning for ytelsen, og da går det mer på hvor lang tid det tar å gå gjennom hele scriptet enn på akkurat antallet funksjoner. PS: skal du ha mange funksjoner anbefales det å bruke objekt-orientert design fremfor å bare ha ei lang liste funksjoner. Lenke til kommentar
Doffar Skrevet 15. juni 2005 Forfatter Del Skrevet 15. juni 2005 Har du noen steder jeg kan lese om det? Objekt orientert design Lenke til kommentar
Doffar Skrevet 15. juni 2005 Forfatter Del Skrevet 15. juni 2005 (endret) Trenger litt mer hjelp med denne OOP'en jeg. Jeg har nå dette scriptet(funnet på sindrem.com) <?php class klassenavn { var $variabel; function klassenavn() { $this->variabel = "Hallo"; } function skrivut() { print $this->variabel; } } $obj = new klassenavn; $obj->skrivut(); ?> Hvordan gjør jeg slik at scriptet blir inculdert et annen sted. La meg prøve å forklare. Jeg har f.eks mange db-funksjoner i en klasse. All koden ligger i scripts.php. Jeg inkluderer scripts.php i en annen side og vil hente ut spesielle funksjoner. Jeg skjønte det med å bruke <?php inclusion(); ?> til å hente ut spesielle funksjoner men her lages funksjoner som brukes om igjen av et objekt. Hvordan kan jeg hente ut det spesielle objektet fra klassen? (Det er det siste spørsmålet som er essensielt her) Mvh Doffar Endret 15. juni 2005 av Doffar Lenke til kommentar
???????? Skrevet 15. juni 2005 Del Skrevet 15. juni 2005 Du må først hente selve filen, med f.eks. include(). Siste delen du har i scriptet fjerner du fra class'en: $obj = new klassenavn; $obj->skrivut(); Dette plasserer du isteden for på hovedsiden. Da kan du senere hente andre funksjoner også, f.eks. $obj->hehe(); dersom du oppretter denne. Lenke til kommentar
Doffar Skrevet 15. juni 2005 Forfatter Del Skrevet 15. juni 2005 Blir det sånn da? <?php class klassenavn { var $variabel; function klassenavn() { $this->variabel = "Hallo"; } function skrivut() { print $this->variabel; } } ?> og på siden: <?php $obj = new klassenavn; $obj->skrivut(); ?> Så objektet må lages der det brukes? "$obj = new klassenavn;" Eller går det an å legge det inn i den første kodeblokken? Lenke til kommentar
???????? Skrevet 15. juni 2005 Del Skrevet 15. juni 2005 Det er mulig å plassere ner Klassenavn der du ønsker, men det er vanlig å plassere det på de forskjellige sidene - både fordi noen editorer foretrekker det og fordi det gjør koden lettere å forstå senere eller for andre. Lenke til kommentar
Doffar Skrevet 15. juni 2005 Forfatter Del Skrevet 15. juni 2005 Skjønner. Tusen takk for all hjelp. Har forstått en god del mer nå Lenke til kommentar
Anbefalte innlegg
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 kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå