• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Obiektowe podejśćie PHP - Różnica względem c++ ?

Object Storage Arubacloud
–1 głos
538 wizyt
pytanie zadane 5 maja 2018 w PHP przez Q7V Gaduła (4,250 p.)

Cześć, napisałem prosty skrypt obiektowo no ale nie działa. :D Wydawało mi się, że pojęcie obiektowe jest identyczne w każdym języku, a jednak nie... czytałem różne poradniki, ale nic nie rozumiem. Próbuję przepisać swoje stare proste skrypty na skrypty napisane obiektowo.

<form action="" method="post">
Tekst do sprawdzenia:<br />
<input name="tekst" value="" /><br />
<input type="submit" value="Wyślij" name="submit" />
</div>
</form>
<?php
class test{
public:
    $tekst="Znaleziono test";
    $tekst2="Nie znaleziono test";
function sprawdz(){
    $kontrola=strpos($cukiereczek, "test");
    if($kontrola){
        echo "Tekst nie zawiera test - $tekst2";
        }
        else{
        echo "Tekst zawiera test - $tekst";
        }


}

};

$cukiereczek = $_POST["tekst"];
test a1;
a1.sprawdz();


?>

Umiem jedynie obiektowo napisać takie coś w c++, myślałem że w PHP jedyna różnica to marginalne zmiany w składni, ale jednak nie. :P

2 odpowiedzi

+2 głosów
odpowiedź 5 maja 2018 przez Eryk Andrzejewski Mędrzec (164,260 p.)

Ja proponuję przejrzeć jakiś kurs, albo oficjalny podręcznik do PHP, bo jeżeli mnie pamięć nie myli, to składnia PHP jeśli chodzi o klasy jest nieco inna (mam tutaj głównie na myśli owe public:).

Jeżeli chodzi o kurs PHP, to chyba mogę polecić kurs tworzony przez naszego administratora Arka: https://www.phpdevs.pl/

Przy okazji, możesz pomóc mi go trochę zagonić do rozwijania tego kursu, bo dawno już niczego nie dodał. cheeky

komentarz 5 maja 2018 przez Q7V Gaduła (4,250 p.)
Tak znam ten kurs. :D Poległem jednak właśnie na części związanej z podejściem obiektowym. Próbowałem zrozumieć, ale mój umysł poległ. Dopiero filmik Pana Zelenta jakoś ułożył w mojej głowie podejście obiektowe, jednakże tylko w c++ i w tymże języku jakieś proste programy mi wychodzą.
+2 głosów
odpowiedź 5 maja 2018 przez event15 Szeryf (93,790 p.)
Idea obiektowego programowania sama w sobie, w zasadzie, jest taka sama w każdym języku. Jednak każdy język ma inne rozwiązania obiektowe. Chociażby garbage collector czy rozwiązanie diamentowego dziedziczenia. Niektóre języki obiektowe zachęcają do programowania kontraktowego (Eiffel stworzony przez Bertranda Meyera), inne nie posiadają osobnego bytu w postaci interfejsu (jak C++). Inne języki inaczej mają rozwiązane pakietowanie i namespacing - porównaj Javę do PHP czy C++.

PHP jest językiem o innej składni niż C++. Jest językiem C-podobnym, ale nie takim samym. Już samo występowanie operatora ??, czy oznaczenie jaki typ metoda zwraca - w PHP robi się to po nazwie metody po dopisaniu dwukropka.

Gdyby być ścisłym, to każdy język obiektowy ma również inne pomysły na rozwiązanie problemów obiektowych już w samych zamysłach. W PHP bardzo powszechne jest tworzenie obiektów typu interface i abstract class, zaś nie ma czegoś takiego jak zaprzyjaźnione klasy. W C++ nie znajdziesz słowa kluczowego interface.

PHP też udostępnia mechanizm refleksji, który jest niespotykany w C++, przez co c++ ma utrudniony sposób unit testowania kodu. Do tego PHP ma słabe typowanie a C++ ma silne typowanie. W PHP można dziedziczyć tylko po jednym obiekcie, a implementować można wiele interfejsów.

Podobne pytania

0 głosów
1 odpowiedź 225 wizyt
pytanie zadane 29 maja 2017 w PHP przez Justyna Obywatel (1,210 p.)
0 głosów
1 odpowiedź 266 wizyt
pytanie zadane 24 maja 2017 w PHP przez Justyna Obywatel (1,210 p.)
+1 głos
3 odpowiedzi 293 wizyt
pytanie zadane 20 maja 2017 w PHP przez `Krzychuu Stary wyjadacz (13,940 p.)

92,576 zapytań

141,426 odpowiedzi

319,652 komentarzy

61,961 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...