webForumDet fria alternativet

Bästa sätt att inkludera en fil i en klass

PHP

3 svar · 536 visningar · startad av Tulork

Medlem sedan aug. 2004903 inlägg
Frågan#1

Funderar över det bästa sättet att inkludera en fil i en klass. Vi kan ta en väldigt simpel, påhittad klass:

<?php
class husdjur
{

private $namn;
private $alder;

   private function prep_husdjur($namn, $alder)
   {
       $this->$namn = $namn;
       $this->alder = $alder;
   }

   private function check_husdjur()
  {
       //Anslutningen till databasen ligger i filen connect.php i samma mapp
       //kolla om namnet på husdjuret redan finns
      
       //Om det finns det
       return true;

      //Om det inte finns
      return false;
  }

   private function save_husdjur()
   {
      $check = $this->check_husdjur();
      
     //Om $check är true
     echo "Namnet finns redan";

    //Om $check är false
    //Anslutningen till databasen ligger i filen connect.php i samma mapp
    //Spara i databasen
   }

}

?>

Alltså... i detta exempel så måste man inkludera connect.php två gånger.. en gång i check_husdjur() och en gång i save_husdjur().... men det borde ju räcka att någonstans bara inkludera connect.php en gång...en generell include, require eller require_once som tillförser alla metoder med innehållet i connect.php.

Vill avsluta med att ursäkta om exemplet är dåligt, elelr om jag använder fel termer... men jag tror ni är klipska nog att förstå vad jag menar.

Medlem sedan aug. 2004903 inlägg
#2

Alternativt... kan inte tänka mig att det är specieltl optimalt att göra på detta viset

private function db_connect()
{
   return "connect.php";
}

private function save_husdjur()
{
   require_once($this->db_connect());
}

Eller om man sparar sökvägen dirrekt

private $db_connect = "connect.php";

Och sen bara anropar variablen med require_once($this->db_connect);

Ingen av dessa två tycker jag verkar optimalt....

Medlem sedan juni 20014 421 inlägg
#3

http://www.webforum.nu/showthread.php?t=161687

Läs hela tråden (du kan hoppa Compusas postningar om DAO eftersom du inte kommer behöva hela den abstraktionen plus att du förhoppningsvis kör med PDO)
Men kolla speciellt på UrMes sista kodsnutts-postning.

Medlem sedan aug. 2004903 inlägg
#4

Självklart kör jag med PDO. UrMes sista kodsnutt öppnade upp ögonen lite... är ganska självklart egentligen nu i efterhand :) Men så är det med programmering ibland.

253 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25
123 ms — deklarationer (db)
0 ms — hämta statistik (cache)
125 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)