Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Udostępnianie funkcji
Forum PHP.pl > Forum > PHP
Azek
Mam pytanie dotyczące udostępniania funkcji przez serwer/stronę www. Czy jest możliwość udostępnienia funkcji w pliku php wrzuconym na serwer, tak aby ktoś mógł go zaincludować i wywołać funkcję, ale nie mógł podejrzeć jej źródła (tzn zajrzeć do includowanego pliku)?
Wyobrażam to sobie tak:
1. Wrzucam plik fajna-funkcja.php na serwer.
2. Informuję o sposobie wywołania funkcji (obliczenia(a,b,c)).
3. Ktoś includuje plik na swojej stronie (include('http://moja-strona.pl/fajna-funkcja.php').
4. Gdzieś na stronie wywołuje funkcję ($wynik=obliczenia(10,20,30)) i dalej coś może robić z wynikiem.

A jeśli tak, to jak trzeba ustawić prawa dostępu do pliku na serwerze?
mstraczkowski
Możesz to bodajże zrobić tak jak prezentujesz z tym, że musisz mieć odpowiednie ustawienie w php.ini

ini.allow-url-include

Osobiście nie uważam, aby to był dobry pomysł, ale to co z tym robisz to już twoja sprawa, pytasz - odpowiadam wink.gif
markonix
Nie lepiej zrobić coś na wzór API?
redeemer
@mstraczkowski: Nie, nie może. "include('http://moja-strona.pl/fajna-funkcja.php')" takie coś zadziała pod warunkiem, że serwer www (na moja-strona.pl) nie zinterpretuje pliku fajna-funkcja.php i wyświetli jego źródło, ergo każdy będzie mógł poznać kod tej funkcji. Możesz użyć jakiegoś "zaciemniacza" (ang. obfuscator) kodu, jednak to tylko spowoduje, że będzie trudniejszy w odczytaniu.

Edit: literówka
CuteOne
Jedyne słuszne rozwiązanie - SOAP

Zobacz sobie na WebAPI od allegro
mstraczkowski
Cytat(redeemer @ 4.03.2013, 22:18:29 ) *
@mstraczkowski: Nie, nie może. "include('http://moja-strona.pl/fajna-funkcja.php')" takie coś zadziała pod warunkiem, że serwer www (na moja-strona.pl) nie zinterpretuje pliku fajna-funkcja.php i wyświetli jego źródło, ergo każdy będzie mógł poznać kod tej funkcji. Możesz użyć jakiegoś "zaciemniacza" (ang. obfuscator) kodu, jednak to tylko spowoduje, że będzie trudniejszy w odczytaniu.

Edit: literówka

Dzięki za informacje, faktycznie.

Też o SOAP od razu pomyślałem, gdy tylko zobaczyłem "Udostępnianie funkcji", także ja bym także polecał się tym zainteresować.
Azek
Oo..., tego jeszcze nie znałem... Mógłby ktoś podać na moim przykładzie jak powinien wyglądać kod od strony klienta i serwera?

Trochę pogrzebałem i znalazłem: http://webmaster.helion.pl/index.php/php-uslugi-sieciowe-xml. Tak na przyszłość jakby ktoś potrzebował.
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.