Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Programowanie w C, C++ a PHP
Forum PHP.pl > Inne > Hydepark
PMadej
Wyczytałem gdzieś, że php jest oparte na C. Chciałem się zapytać osób które są w temacie czy jeżeli się załapie podstawy php to można zacząć pisać w C. Chodzi mi o to jak bardzo różni się pisanie w php od C.

Programowałem kiedyś w TP i DELPHI, niestety ten język jakoś nie przemawia do mnie.

Chcę pisać aplikacje oparte na bazach danych. Jeśli da się wykorzystać w C Mysqla z chęcią bym to zrobił bo znam go co nieco.

Jeszcze jedno ... jeśli bym już się brał za C to jaki edytor polecacie.

Z góry dzieki za odpowiedzi.
Belze
Mozna zawsze zaczac programowac... ale raczej znajac podstawy php nie tak latwo zalapiesz C... ale za to znajac C latwiej bedzie ci zrozumiec niektore funkcje php (m.in. tryby warunkowe itp.).. imho..

MySql w C? jesli cos takiego istnieje to oswieccie mnie, bo o czyms takim pierwszy raz slysze..
rachwal
Cytat
MySql w C? jesli cos takiego istnieje to oswieccie mnie, bo o czyms takim pierwszy raz slysze..


oswiecenie tongue.gif

raczej latwiej bedzie pojac php znajac C niz odwrotnie...
PMadej
chodzi mi o to, że piszę teraz aplikacje w php która ma działać tylko offline. Z racji tego, że php jest darmowe i moge je wcisnąć na linuxa jest to najtańsze rozwiązanie.

Problem w tym, że niektóre osoby które mają z niej korzystać uważają, że jest to zbyt duże zamieszanie, tzn serverki HTTP, MYSQL i php.
W związku z tym zacząłem się zastanawiać czy nie prościej będzie napisać to w C i skompilować dla linuxa.

Co o takim rozwiązaniu sądzicie. Dodam jeszcze, że php uczę się ponad miesiąc i jestem w zaawansowanym stadium jednego z modułów (Sprzedaż).

Czy w C inaczej pisze się aplikacje dla windows a inaczej dla linuxa??

Słyszeliście może coś o C++BuilderX który pozwala ponoć pisać wszystko tak samo tylko później się inaczej to kompiluje.
FiDO
Cytat
Problem w tym, że niektóre osoby które mają z niej korzystać uważają, że jest to zbyt duże zamieszanie, tzn serverki HTTP, MYSQL i php.
W związku z tym zacząłem się zastanawiać czy nie prościej będzie napisać to w C i skompilować dla linuxa.

Nie ma czegos takiego jak serwer php... Dwa serwery to nie tak znowu duzo, skoro ma dzialac tylko offline (czyli w jakims LANie?) to mozna wylaczyc w MySQL'u nasluchiwanie na protokole TCP i pozostawic tylko polaczenia za pomoca Unix Sockets.
Druga sprawa to, ze przy pisaniu tego w C tez musialbys miec serwer MySQL (chyba, zebys skorzystal z embedded mysql server).
Trzecia sprawa to musialbys sie najpierw dobrze nauczyc C, zeby cos zrobic a to nie jest takie hop siup, 2 tygodnie i juz umiesz..
Znam jeden niekoniecznie udany przypadek przesiadki php->C.

Cytat
Co o takim rozwiązaniu sądzicie. Dodam jeszcze, że php uczę się ponad miesiąc i jestem w zaawansowanym stadium jednego z modułów (Sprzedaż).

Hmm.. miesiac to troch krotko i juz chcesz sie zabierac za C?

Cytat
Czy w C inaczej pisze się aplikacje dla windows a inaczej dla linuxa??

To chyba logiczne?
Tzn. skladnia jest ta sama, bo i jezyk ten sam, ale API linuxa i API windowsa rozni sie znacznie.
Cytat
Słyszeliście może coś o C++BuilderX który pozwala ponoć pisać wszystko tak samo tylko później się inaczej to kompiluje.

Pamietasz slogan reklamy ACE? winksmiley.jpg
adwol
Cytat
MySql w C? jesli cos takiego istnieje to oswieccie mnie, bo o czyms takim pierwszy raz slysze..

A php to niby skąd ma wsparcie do obsługi połączeń z MySQLem? Główną punktem dostępu klienckiego do MySQLa jest libmysqclient, czyli właśnie biblioteka dla C (i nie tylko). Inni, jak np. php, dopiero korzystają z tego.
adwol
Cytat
Trzecia sprawa to musialbys sie najpierw dobrze nauczyc C, zeby cos zrobic a to nie jest takie hop siup, 2 tygodnie i juz umiesz..
Znam jeden niekoniecznie udany przypadek przesiadki php->C.

Dodam jeszcze, że w C pojawiają się sprawy i problemy praktycznie nieistniejące w PHPie, jak np. alokacja i zwalnianie pamięci, wskaźniki i wszystko co z nimi związane, potrzeba sprawdzania zakresów tablic i indeksów, przepełnienia buforów, znacznie bardziej niskopoziomowe funkcje i w ogóle styl myślenia, brak typu skalarnego, itd.
Generalnie tak jak powiedział FiDO przesiadka z php na C dla kogoś kto nie zna tego drugiego może być bolesna i nie polecałbym takim osobom robienia tego zwłaszcza w produkcyjnych projektach.
PMadej
dzieki za wszystkie wypowiedzi.
Po tym co się dowiedziałem zostaje przy php ... a może kiedyś wezmę się za C.

Ambicje ambicjami ale trzeba myśleć realnie;)
Belze
dzieki za oswiecenie smile.gif
PMadej
no i tak człowiek chcący zasięgnąc opini fachowców rozpętał burzę w szklance wody.

Ja powiem wam tylko jedno ...

php zostało stworzone do tego, żeby w prosty sposób tworzyć aplikacje i serwisy WEB

C jest do tworzenia aplikacji Winows Linux które mogą mieć implementowaną obsługę Web, ale podstawowym założeniem tego języka jest niezależnośc od przeglądarek, serverów itp.

Takie jest moje zdanie a licytowanie się nad wyższością jednej funkcji nad drugą i tym co jest wyższe, a co niższe do niczego nie prowadzi. Kolejna sprawa to to, że każdy jest mocny w tym co umie.

Wątek miał inne założenie i opowiedź dostałem tylko częściową więc mowię EOT
adwol
Cytat
no i tak człowiek chcący zasięgnąc opini fachowców rozpętał burzę w szklance wody.

Nie burzę, tylko dyskusję, a temat jak na hydepark chyba nie jest nieodpowiedni.
Cytat
C jest do tworzenia aplikacji Winows Linux które mogą mieć implementowaną obsługę Web, ale podstawowym założeniem tego języka jest niezależnośc od przeglądarek, serverów itp.

php też jest niezależny od przeglądarek i serwerów. To, że w większości przypadków używa się go do oprogramowywania serwisów WWW nie oznacza, że nie można napisać w nim niezależnego programu. Podobnie jak java nie kończy się na apletach na WWW.
Cytat
Takie jest moje zdanie a licytowanie się nad wyższością jednej funkcji nad drugą i tym co jest wyższe, a co niższe do niczego nie prowadzi. Kolejna sprawa to to, że każdy jest mocny w tym co umie.

Całkowicie się zgadzam i, przynajmniej ja, nie próbuje w żaden sposób wywyższyć php nad C i vice versa. Oba języki są niejako odrębne, mają inne zastosowania i inne zalety i wady, ale próba przeniesienia niektórych własności (jak np. wskaźników) z jednego do drugiego jest IMHO trochę bez sensu.
Cytat
Wątek miał inne założenie i opowiedź dostałem tylko częściową więc mowię EOT

Fakt, jeżeli mamy go kontynuować należałoby chyba wydzielić nowy wątek.
PMadej
Cytat
php też jest niezależny od przeglądarek i serwerów. To, że w większości przypadków używa się go do oprogramowywania serwisów WWW nie oznacza, że nie można napisać w nim niezależnego programu. Podobnie jak java nie kończy się na apletach na WWW.


Czyli chcesz przez to powiedziec, że pisząc w php mogę stworzyć program niezależny od przeglądarki. Mógłbyś rozwinąć ten wątek, bo to chyba to co mi jest potrzebne. I jeszcze jedno czy w ten sposób można się też uniezależnić od serwera bazy danych np. MySQL??
PMadej
komentarz do postu: http://forum.php.pl/viewtopic.php?p=37803#37803 ktory przez pomylke zostal przesuniety tongue.gif / Seth


Człowieku (@Adwol) jesteś genialny ... dlaczego mi tego od razu nikt nie powiedział...

Właśnie dlatego zacząłem się zastanawiać nad pisaniem w C.

Możesz podać jakieś zródła na temat pisania aplikacji linux lub windows w php.

A co do uniezależnienia się od serwera MySQL to chodzi mi o to, że mam aplikacje która korzysta z tej bazy danych i z tego co na razie wiem, a niestety nie jest tego za wiele sad.gif muszę mieć serwer Mysql żeby się do tej bazy odwołać ...

Interesuje mnie to w innej kwesti ... w sieci nie ma darmowych kont umożliwiających założenie bazy danych Mysql o nieograniczonym rozmiarze czyli np dostaje 50 mb na WWW i 5 mb na bazę ... a dzięki temu o czym wspomniałeś mogę współdzielić te 50 mb na WWW i bazę.

Czy może się mylę??
Seth
Posty nie zwiazane z tematem zostaly wydzielone tutaj: http://forum.php.pl/viewtopic.php?t=5937
adwol
Cytat
Możesz podać jakieś zródła na temat pisania aplikacji linux lub windows w php.

To zależy co chcesz napisać. W środowisku Windows możesz skorzystać funkcji PHPowych do interakcji z WINAPI: http://pl.php.net/manual/pl/ref.w32api.php
W uniksie jak chcesz napisać aplikację Xową to skorzystaj np. z GTK-php. Tekstowe/shellowe pisze się normalnie, tak jakbyś pisał skrypt w perlu czy shellu.
Cytat
A co do uniezależnienia się od serwera MySQL to chodzi mi o to, że mam aplikacje która korzysta z tej bazy danych i z tego co na razie wiem, a niestety nie jest tego za wiele  :( muszę mieć serwer Mysql żeby się do tej bazy odwołać ...

Jeżeli myślisz o trzymaniu danych na plikach, to owszem da się to zrobić ale będzie to Ci powodowało mnóstwo problemów przy każdej bardziej skomplikowanej bazie. Generalnie odradzam takie coś. Ewentualną alternatywą jest Berkeley DB. Jest do tego wsparcie w PHPie, a w wersji 4 engine posiada nawet transakcje. Musisz tylko pamiętać o tym, że to jest baza drzewiasta a nie relacyjna więc jest ciut inne podejście.
PMadej
Cytat
To zależy co chcesz napisać. W środowisku Windows możesz skorzystać funkcji PHPowych do interakcji z WINAPI: http://pl.php.net/manual/pl/ref.w32api.php
W uniksie jak chcesz napisać aplikację Xową to  skorzystaj np. z GTK-php. Tekstowe/shellowe pisze się normalnie, tak jakbyś pisał skrypt w perlu czy shellu.


Piszę aplikację do obsługi zakładu produkcyjnego, moduły sprzedaży, raporty, zarządzanie magazynem itp. Piszę w php bo raz proste, dwa darmowe. Co do środowiska to w formie strony WWW wcisnę to na Linuxa bo będzie to jedyny program z którego korzystać będzie ta firma. Więc jeśli bym miał pisać w php API to też na Linuxa, ze względu na to, że to dalej będzie darmowa platforma.
ser
jak nie chcesz mieć tych wszystkich linuxowo serwerowych naleciałości to tak pod winem jak pod linem możesz się pobawić spokojnie php skompilowanym jako CGI - pracuje to ładnie i wydajnie - nie kazdy muci pracować na Apache. Ja mam na ftp taką małą binarke i pod to robię kod na poczkaniu - pracuje szybko i w miarę bezboleśnie o ile ktoś nie miącha intensywnie wieloma technologiami.
pzdr
Chewolf
Cytat
 
Post: 2003-09-22 22:26:22
Report Post

hmm, przez ten czas to już chyba sobie poradził
czezz
Gdzie można znaleźć pełną liste funkcji do Win32API dla php?
Bardzo mnie interesuje jak sie nazywaja inne obiekty w których można wyświetlić jakąś informacje. "MessageBoxA()" jest podany w przykładzie na http://pl.php.net/manual/pl/ref.w32api.php.
,a ja szukam takiego okienka gdzie mógłbym wylistować to co wyrzuci mi zapytanie z MySQL'a
escaflowne
To?
czezz
ok,
chciałbym wyśwetlić zapytanie z bazy w takim okienku jak jest tu w poniższym linku
http://msdn.microsoft.com/library/default....nglistboxes.asp

Czy może mi ktoś polećić jakiś sposób ?
sf
Napisz to w C++. Skoro chcesz aplikację okienkową to po co używasz php? Nie wiem czy jest możliwość uzyskania takiego okienka, raczej wątpliwe.
czezz
...! questionmark.gif?
czytając ten post od początku ustaliliśmy, że php może korzystać z Win32API... więc jest możliwe... przeczytaj temat od początku dopiero wtedy odpowiadaj.
sf
Przeczytałem i nadal twierdzę, że w php nie powinno się tworzyć aplikacji korzystających z Win32API. Ze strony php.net przeczytałem, że jest to w fazie tworzenia więc wykorzstwanie tego w produktach, które są na sprzedaż, a o takich PMadej mówił jest błedem bo powoduje, że naraża on odbiorcę produktu na problemy. Moje początki programowania zaczynały się m.in. od winapi i w życiu by mi nie przyszło wykorzystywać php do tego. PMadej ciągle powtarza, że php jest darmowe. Nie rozumiem tego... C++ też jest darmowe i ma darmowe kompilatory. Osobiście uważam takie coś za mutanta, który nie powinen był powstać.

No, ale nic. Może ktoś Ci pomoże wyświetlić to `coś` ja niestety nie wiem jak ;] Bo dla mnie to dwa różne światy ;P
czezz
spróbuj się skupić. Ja nie pisze, że chce tworzyć komercyjne oprogramowanie! Ni pisze, że chce to zrobić w C++!
Chce (EXPERYMENTALNIE - to chyba trzeba Ci podkreślić ) zrobić coś w php z użyciem API exclamation.gif!! Jeśli nie potrafisz odpowiedzieć na wcześniej zadane pytanie to nie pisz. I nie pisz mi o C++.Wiem, że w C++ można...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.