1

lørdag, 21. oktober 2006, 11:18


Hvis vi nu siger at jeg har en separat fil med functions hvor en af dem( get_menu() ) udtrækker nogle rows fra MySQL til en menu.

Inde i index.php ligger der så nogle <div> tags med design og indholdsbokse. I boksen til venstre skal der være en menu, hvor der i stedet står f.eks. <? get_menu(); ?> i stedet. hvordan kan jeg lave det om til oop? har læst bøger, men synes stadig at functions vil være lettere..

Det kan måske hjælpe hvis jeg siger at jeg også skal have en menu i toppen, der næsten er magen til, dog ændring så der kommer et | i stedet for et <br \> og det kommer fra en anden MySQL tabel

Dette indlæg er blevet redigeret 1 gange, senest redigeret af "PaW^" (21.10.2006, 12:00)


3

søndag, 22. oktober 2006, 21:47


Sq ikke helt sikker på jeg er helt med på hva du mener men

<?php
$rootpath = "";
require($rootpath."functions.php");
?>

Så includere du det der findes i functions.php så hvis du har en funktion i functions.php som hedder

function _hello()
{
echo'Hello World';
}

og du kalder <? _hello(); ?> har du kaldt funktionen i functions.php

Intel I5 2500k | Gigabyte Z68 | 16GB Kingston | Radeon 6950 | 2xOCZ Vertex 3 120GB Raid 0 | OCZ 650W
27" (U2711) DELL | 24" (2408WFP) DELL | Ergotron LX Dual Side-by-Side

Canon 5DM2 | 16-35mm 2.8L | 24-70mm 2,8L | 85mm 1.2L USM II | 70-200mm 2.8L IS
Nogle Speedlites | PocketWizards

4

søndag, 22. oktober 2006, 23:07


Det er bare funktioner. Det er objekt orienteret programmering. Det bruger man objekter hvor der er funktioner indeni og så skal man declare objekterne inden. forstår bare ikke helt at få det til at spille sammen.


5

søndag, 22. oktober 2006, 23:51


hmm har aldrig set det i PHP, kender det kun i JAVA

Intel I5 2500k | Gigabyte Z68 | 16GB Kingston | Radeon 6950 | 2xOCZ Vertex 3 120GB Raid 0 | OCZ 650W
27" (U2711) DELL | 24" (2408WFP) DELL | Ergotron LX Dual Side-by-Side

Canon 5DM2 | 16-35mm 2.8L | 24-70mm 2,8L | 85mm 1.2L USM II | 70-200mm 2.8L IS
Nogle Speedlites | PocketWizards

6

mandag, 23. oktober 2006, 09:17


Er kun lige selv begyndt på at læse om OOP i PHP, en ting du skal huske er der er forskel på hvordan PHP4 og PHP5 håndterer OOP, så hvis du læser en artikel om PHP5 og sidder med PHP4 så virker det absolut ikke - men det virker fint den anden vej.

Et simpelt eksempel:

PHP kildekode

1
2
3
4
5
6
7
class davs //ny klasse/objekt der siger davs
    function davs_med_dig() { //funktion i klassen som udfører davs 
        echo "Davs med dig"//udskriv til skærmen
    }
}
$nyDavs = new davs//nyt instans af klassen davs
$nyDavs->davs_med_dig(); //kør davs_med_dig funktionen fra klassen

Og hvad er forskellen så på det er procedural kode - ja lige her kan man sige det jo nok ville være nemmer bare med function davs_med_dig() men fordelen er jo det kan udbygges i den klasse uden at du skal til at ændre alt den gamle kode - så lad os udbygge den med nogle variabler

PHP kildekode

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
class davs { 
    var $fornavn//variabler i klassen
    var $efternavn;
    function setFornavn($navn) { //funktion til at sætte fornavn variablen
        $this->fornavn $navn;
    } 
    function setEfternavn($navn) { //efternavn
        $this->efternavn $navn;
    }       
    function hentNavn() { //udhent fulde navn
        return $this->fornavn." ".$this->efternavn//retuner fornavn fra klassen $this henfører til klassen - samt efternavn
    } 
    function davs_med_dig() {
        echo "Davs med dig ".$this->hentNavn(); //tilføjet hentNavn til davs med dig
    }
    
}
$nyDavs = new davs;
$nyDavs->setFornavn("Martin"); //sæt fornavn i klassen til Martin
$nyDavs->setEfternavn("Nielsen");  //efternavn
$nyDavs->davs_med_dig();


Det er sådan lige hvad min hjerne kan brygge op her om morgen - og det er ikke tjekket så hvis du får en fejl smidt i hovedet så må du lige sige til :D

Der er dem der vil påstå at det er langt nemmere at lære PHP i OOP hvis du ikke først har vendt dig til procedural kodning, fordi OOP kræver en hel ny tankegang, men hvis man først kommer af med de dårlige vaner fra funktionerne og over i ren OOP ja men så er der meget at hente, både performance mæssigt, men så sandelig også idet at du vil kunne bruge mange af dine klasser igen og igen, men jeg vil helt klart anbefale at finde en bog om emnet, fordi damn det er omfattende og forvirende til tider - ovenstående er jo sindsygt simpelt - men man kan også snakke om klasser der udvider klasser (extends) osv osv
Det klassisike eksempel på en fed klasse at ha er en mysql klasse, og det er vist også det de fleste starter med at lave, simpelthen en klasse der står for håndteringen af alle database kald,

Håber det kunne hjælpe dig lidt på vej


7

onsdag, 25. oktober 2006, 14:51


http://dk.php.net/zend-engine-2.php

OOP er en kraftig feature i PHP, som kan spare en mange timer. Programmerer selv Delphi, C/C++, C# og PHP lidt i flæng. Alle disse sprog, pånær C, er objektorienterede, og større programmer er langt lettere at skrive i disse sprog, da genbrug og vedligeholdelse af kode er langt lettere end ved procedural kode. Ofte er simple programmer lettest at skrive i C, men så snart man vil tilføje ekstra funktionalitet støder man ind i en række problemer, som OOP er designet til at løse.

EB

embedded systems enthusiast

Nyeste Videoer og Trailers

Indsend nyhed
Har du fundet en fed nyhed så indsend den så alle andre på Tweak.dk kan få glæde af den.