Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Engine strony, jak zaczac?
dzieciol4
post
Post #1





Grupa: Zarejestrowani
Postów: 42
Pomógł: 0
Dołączył: 5.11.2003

Ostrzeżenie: (0%)
-----


Witam!
Chce napisac swoj pierwszy silnik strony. Wiem mniej, wiecej (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) na czym to polega (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) . Napisalem juz wiekszosc klass ktore beda wchodzic w jego sklad tzn. mam klasy glowne, chyba rdzeniem sie to nazwywa (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) , i klasy ktore korzystaja z wlasciwosci/metod klas glownych. Korzystam takze ze smartow, tzn. mam przygotowane pliki w szablonach i wiem jak ich uzywac. I moim problemem jest brak pomyslu/inteligencji aby to polaczyc w skladna calosc. Dodatkowo czytajac wasze posty mozna sie domyslic, ze zalecacie korzystanie z referencji. I tutaj (skonczywszy dluugi wstep) pojawiaja mi sie pytania:
1. Czy klasa 1 ktora jest "korzeniem" wszsytkich klas ma odpowiadac za inicjowanie innych klas? np.
[php:1:c9afb0cb4f]<?php
class core
{
function news()
{
$news = new klasaobslugujacanewsy;
$news -> jakasfunkcjaztejklasy();
}
}
?>[/php:1:c9afb0cb4f]
itd. chyba rozumiecie o co mi chodzi? Mam problemy z przekazywaniem swoich mysli (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
2. Czy zawsze nalezy pracowac na kopiach obiektow? Jezeli tak to dlaczego?
3. Czy nalezy inkludowac biblioteki klass uzalezniajac je od np. strony na jakiej znajduje sie user? np.
[php:1:c9afb0cb4f]<?php
if ($_GET[strona] == newsy)
{

include ('newsy.class.lib');

}

class core
{
if ($_GET[strona] == newsy)
{

function news()
{
$news = new klasaobslugujacanewsy;
$news -> jakasfunkcjaztejklasy();
}

}
}
?>[/php:1:c9afb0cb4f]
Jak bede mial jeszcze jakies pytania to bede pytal (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Dzieki za odp.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
hawk
post
Post #2





Grupa: Zarejestrowani
Postów: 521
Pomógł: 0
Dołączył: 3.11.2003
Skąd: 3city

Ostrzeżenie: (0%)
-----


php 4
Referencji używaj przekazując obiekty, ponieważ PHP4 domyślnie kopiuje obiekty.
Nie używaj referencji do przekazywania wszystkiego innego (zmiennych, tablic, itd.), ponieważ PHP4 potrafi zliczać odwołania do zmiennych i fizyczną kopię wykona nie wtedy, kiedy wykonasz przypisanie, ale dopiero wtedy, kiedy zmienisz wartość. Czyli, jeżeli przekazujesz do funkcji w parametrze wielką tablicę, a w samej funkcji nie zmieniasz nic w tej tablicy, PHP4 nie wykona kopii tablicy.

Wyjątkiem są sytuacje, kiedy zależy ci na działaniu odwrotnym, tj. chcesz mieć kopię obiektu, albo chcesz, żeby funkcja mogła zmienić wartość zmiennej przekazanej w parametrze.

Tako rzecze Zend.

PHP5
PHP5 zawsze przekazuje obiekty przez referencję (wreszcie!). Do robienia kopii służy funkcja __clone() i tylko ona. Więc cała część o referencjach do obiektów jest nieaktualna. Reszta (referencje do zmiennych) pozostaje bez zmian.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 7.10.2025 - 17:49