[PHP] Class functie aparte waarde output per functie

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Wat ik eigelijk wil is dat elke waarde die uit een functie komt appart kunnen oproepen, waarna deze aan een template plek gekoppeld kan worden en dan weergegeven wordt.
Aleen als je in een functie return(); zet krijg je alles terug, maaar k wil juist dat het selectief blijft.

Ik heb hier dus over na zitten denken en kwam op dit uit!.
PHP:
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
// class.php
class cClass {
    function printRecords() {
        $waarde->fietsband = "rubber";
        return $waarde;
        }
    }
?>


<?php>
// index.php
include("class.php");
$laatzien = new cClass;
echo $laatzien->fietsband;
?>


Nu is mijn vraag is dit mogelijk, of zijn er juist betere oplossingen te verzinnen voor deze manier om het selectief waardes uit de functie naar je index.php pagina te versturen, waarna je het laat verwerken door je template.

$tpl['fietsband'] = $laatzien->fietsband;

En nog een vraag, ik ben hier dus echt beginner in.. vind het interesant, maar hoe heet deze vorm van waardes appart opvragen eigelijk 8)7

Acties:
  • 0 Henk 'm!

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Verwijderd schreef op 05 September 2003 @ 10:14:
Nu is mijn vraag is dit mogelijk, of zijn er juist betere oplossingen te verzinnen voor deze manier om het selectief waardes uit de functie naar je index.php pagina te versturen, waarna je het laat verwerken door je template.
Nee, dit is op zich wel goed. :) Alleen:
PHP:
1
2
3
4
5
6
7
8
    $waarde->fietsband = "rubber"; // zou 
    $this->fietsband =  "rubber"; // moeten zijn

// zodat je:
$laatzien->printRecords();
 // de methode aanroepen dus. :)
$tpl['fietsband'] = $laatzien->fietsband;
// dit mogelijk kan maken ;)
Je wil een waarde geven aan $tpl['fietsband'] en dat doe je door de methode printRecords aan te roepen. Deze moet dan de juiste waarde retourneren en dat gaat dan op bovenstaande manier goed. :)
En nog een vraag, ik ben hier dus echt beginner in.. vind het interesant, maar hoe heet deze vorm van waardes appart opvragen eigelijk 8)7
Je vraagt niet echt een waarde op, je assigned hem. $tpl['fietsband'] heeft als waarde nu de waarde van het object fietsband (dus 'rubber') onder de instantie $laatzien. Dit object is dan weer geinstantieerd door de methode printRecords. :Y)

.edit: Op deze manier geef je dus een waarde door, of kopieer je deze by value. Zie ook hier voor een belangrijk stukje informatie. :)
offtopic:
genoeg steekwoorden zo? :Y)

edit:
.edit 2: methode aanroepen natuurlijk

[ Voor 48% gewijzigd door RedRose op 05-09-2003 10:38 ]

Sundown Circus


Acties:
  • 0 Henk 'm!

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 06-09 00:37

curry684

left part of the evil twins

offtopic:
Apart schrijf je met 1 p, topictitle alvast gefixed... doe jij het even in je openingspost? :P

Professionele website nodig?


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ahh Curry684, dit is niet helemaal wat ik bedoel, want nu krijg je nog steeds alle waardes uit een functie gespugd..
En ik wil expliciet 1 waarde uit een functie hebben.

PHP:
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php 
// class.php 
class cClass { 
    function printRecords() { 
        $waarde->fietsband = "rubber"; 
        $waarde->ventiel= "ijzer"; 
        $waarde->velglint= "26"; 
        return $waarde; 
        } 
    } 
?> 


<?php> 
// index.php 
include("class.php"); 
$laatzien = new cClass; 
echo $laatzien->fietsband; 
echo $laatzien->ventiel; 
echo $laatzien->velglint; 
?> 


Als het goed is krijg je op deze manier alle appart gedefineerde waardes uit een functie alleen dat werkt niet zoals ik dacht dat het zou werken. :'(

Acties:
  • 0 Henk 'm!

  • RedRose
  • Registratie: Juni 2001
  • Niet online

RedRose

Icebear

Verwijderd schreef op 05 September 2003 @ 10:36:
Ahh Curry684, dit is niet helemaal wat ik bedoel, want nu krijg je nog steeds alle waardes uit een functie gespugd..
En ik wil expliciet 1 waarde uit een functie hebben.
..
Als het goed is krijg je op deze manier alle appart gedefineerde waardes uit een functie alleen dat werkt niet zoals ik dacht dat het zou werken. :'(
Kijk nog even heel goed. ;) En lees deze ook nog maar eens. :)

Sundown Circus


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Of misschien wel... en heb ik gewoon weer eens n keer niet goed gekeken :S,
Laat ik het eens gaan testen.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Verwijderd schreef op 05 september 2003 @ 10:40:
Of misschien wel... en heb ik gewoon weer eens n keer niet goed gekeken :S,
Laat ik het eens gaan testen.
Ben vandaag een beetje doorzichtig..
Dank u wel, weer een zetje voor de wind :+

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Dan zou het dus op deze manier moeten zijn:

PHP:
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
// class.php
class cClass {
    function printRecords() {
        $this->fietsband =  "rubber"; // moeten zijn
        return();
        }
    }
?>


<?php>
// index.php
include("class.php");
$laatzien = new cClass;
$laatzien->printRecords(); 
$tpl['fietsband'] = $laatzien->fietsband; 
?>


Het is jammer dat ik op dit moment niet in een live omgeving zit, anders had ik dit allang getest.

Maar bedankt voor deze oplossing, en ik ga verder nadenken/maken. 8)

Acties:
  • 0 Henk 'm!

Verwijderd

Je laatste voorbeeld gaat sowieso een parse error geven op line 9.

Verder snap ik niet waarom je hier een class voor gaat schrijven. Je roept $tpl['fietsband'] aan met de bedoeling dat daar rubber uitkomt. Je kan dus net zo goed een associatieve array aanmaken waarbij $array["fietsband"] == "rubber". Kortom je class doet niks anders dan een waarde doorgeven.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Tja dit is een voorbeeld met een statisch gegeven, Stel nou je hebt een dynamische gegeven. en die wordt door je class opgevangen en verwerkt, waarna deze weer terug geparsed wordt naar je php document, waar je de class definities hebt opgegeven om het te verwerken.
Daarna laat je de gegevens ophalen, en in een template omgeving plaatsen.
Dan is dit toch een schitterende oplossing..

Maar daar post ik dit voor, zijn er volgens jou betere ideén en dat ideétje die jij opgeeft, hoe kan ik die dan volgens jou implementeren?

Acties:
  • 0 Henk 'm!

  • curry684
  • Registratie: Juni 2000
  • Laatst online: 06-09 00:37

curry684

left part of the evil twins

spuky: gebruik de volgende keer aub het Afbeeldingslocatie: http://gathering.tweakers.net/global/templates/got/images/icons/edit.gif-knopje ipv 3 posts op een rij te plaatsen. kicken oftewel meerdere opeenvolgende posts maken mag na 24 uur

Professionele website nodig?


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
curry684 schreef op 05 September 2003 @ 12:07:
<span style="color:blue">spuky: gebruik de volgende keer aub het [afbeelding]-knopje ipv 3 posts op een rij te plaatsen. kicken oftewel meerdere opeenvolgende posts maken mag na 24 uur</span>
Sorry NEWBY _/-\o_
Pagina: 1