php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Scripts > BRAINSTORMING PHP/SQL/HTML/JS/CSS
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


BRAINSTORMING PHP/SQL/HTML/JS/CSS Ihr habt eine Idee, aber keinen genauen Ansatz? Diskutiert mit anderen Usern des Forums über eure Gedankengänge um evtl. hilfreiche Ideen zu bekommen!
Normale Fragen bitte weiterhin in die entsprechenden Foren!

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 03-09-2006, 16:14
martinm79
 Registrierter Benutzer
Links : Onlinestatus : martinm79 ist offline
Registriert seit: Jan 2004
Ort: Deutschland
Beiträge: 744
martinm79 ist zur Zeit noch ein unbeschriebenes Blatt
Standard Welche Möglichkeit mit include_once() ist besser?

Hallo,

ich schreibe mir grad eine class und bin am überlegen wie ich der class am besten ein paar Angaben übergebe.
Am einfachsten kann man ja mit der class umgehen, wenn man das so schreibt:
PHP-Code:
class classA
{

    function 
A()
    {
        
// In daten.inc.php ist das Array $daten mit diversen Angaben
        
include_once("daten.inc.php");
        
        
// code....
        
return $daten;
    }
}

// und noch eine andere class im selben script
class classB
{

    function 
B()
    {
        
// In daten.inc.php ist das Array $daten mit diversen Angaben
        
include_once("daten.inc.php");
        
        
// code....
        
return $daten;
    }

Würd daten.inc.php auch nur einmal eingebunden oder bei jedem functionsaufruf? Weil ich die function ja mehrmals in einem script aufrufe.
Oder wäre es denn so besser:
PHP-Code:
// In daten.inc.php ist das Array $daten mit diversen Angaben
include_once("daten.inc.php");

class 
classA
{

    function 
A()
    {
        GLOBAL 
$daten;
        
        
// code....
        
return $daten;
    }
}


class 
classB
{

    function 
B()
    {
        GLOBAL 
$daten;
        
        
// code....
        
return $daten;
    }

?
Danke
__________________
Gut geraten ist halb gewußt.
Mit Zitat antworten
  #2 (permalink)  
Alt 03-09-2006, 17:00
Benutzerbild von onemorenerd onemorenerd
  Moderator
Links : Onlinestatus : onemorenerd ist offline
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
onemorenerd wird schon bald berühmt werdenonemorenerd wird schon bald berühmt werden
Standard

Was ist denn, wenn das Include nicht mehr da ist? Möchtest du es nicht lieber mit require einbinden?

Wo/wie es eingebunden wird, hängt davon ab, ob es immer gebraucht wird oder nur in bestimmten Fällen.

Ein immer ausgeführtes require_once zu Beginn des Scripts ist angebracht, wenn die Daten in allen Klassen schon im Konstruktor verwendet werden und keine statischen ...
Ach um es kurz zu machen: Brauchst du die Daten immer und überall, binde sie einmal am Anfang ein. Ansonsten mit require_once überall dort, wo sie gebraucht werden.
Mit Zitat antworten
  #3 (permalink)  
Alt 03-09-2006, 17:15
martinm79
 Registrierter Benutzer
Links : Onlinestatus : martinm79 ist offline
Registriert seit: Jan 2004
Ort: Deutschland
Beiträge: 744
martinm79 ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Was ist denn, wenn das Include nicht mehr da ist?
Du meinst die Datei die ich einbinden möchte?
Na ich kann auch require nehmen.

Und nein, ich möchte die Datei nicht immer einbinden. Sie würd nur ab und zu gebraucht und nur dann will ich sie auch einbinden.
Weiß nur nicht, ob das Array $daten was in der Datei ist, immer nur einmal in der function A() vorhanden ist oder auch in der function B().
Mhh... Na wenn nicht mach ich erstmal so weiter und messe nachher die zeit.
__________________
Gut geraten ist halb gewußt.
Mit Zitat antworten
  #4 (permalink)  
Alt 04-09-2006, 08:49
hhcm
 PHP Senior
Links : Onlinestatus : hhcm ist offline
Registriert seit: Jun 2005
Ort: Viersen, NRW
Beiträge: 1.833
hhcm ist zur Zeit noch ein unbeschriebenes Blatt
hhcm eine Nachricht über ICQ schicken hhcm eine Nachricht über Skype™ schicken
Standard

Schreib dir in einer Klasse doch einfach eine statische methode zum laden der Daten.

$objekt::load_data();

Die kannst du doch DANN ausführen wenn du die Daten benötigst.
__________________
gruss Chris

Derjenige, der sagt: "Es geht nicht", soll den nicht stoeren, der's gerade tut."
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni

Wissensbestand in Unternehmen
Wissensbestand in UnternehmenLebenslanges Lernen und Weiterbilden sichert Wissensbestand in Unternehmen

25.05.2018 | Berni


 

Aktuelle PHP Scripte

PHP Server Monitor

PHP Server Monitor ist ein Skript, das prüft, ob Ihre Websites und Server betriebsbereit sind.

11.09.2018 Berni | Kategorie: PHP/ Security
PHP WEB STATISTIK ansehen PHP WEB STATISTIK

Die PHP Web Statistik bietet Ihnen ein einfach zu konfigurierendes Script zur Aufzeichnung und grafischen und textuellen Auswertung der Besuchern Ihrer Webseite. Folgende zeitlichen Module sind verfügbar: Jahr, Monat, Tag, Wochentag, Stunde Folgende son

28.08.2018 phpwebstat | Kategorie: PHP/ Counter
Affilinator - Affilinet XML Produktlisten Skript

Die Affilinator Affilinet XML Edition ist ein vollautomatisches Skript zum einlesen und darstellen der Affili.net (Partnerprogramm Netzwerk) Produktlisten und Produktdaten. Im Grunde gibt der Webmaster seine Affilinet PartnerID ein und hat dann unmittelb

27.08.2018 freefrank@ | Kategorie: PHP/ Partnerprogramme
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 19:18 Uhr.