Gå til innhold

Trenger hjelp med includering av funksjon/objekt.


Anbefalte innlegg

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 av Doffar
Lenke til kommentar
Videoannonse
Annonse

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

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

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 av Doffar
Lenke til kommentar

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

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

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å
×
×
  • Opprett ny...