![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.01.2004 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Czy jest jakaś możliwość na wyświetlenie obiektu (za pomocą metody __toString()), bez konieczności podawania tejże nazwy, podczas gdy chcemy zrobić jeszcze jakąś operację na stringu, bez przypisywania jej do kolejnej zmiennej.
Rozwiązanie oczywiście nie zadziała, zadziałałoby, jeżeli byłoby samo
-------------------- |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 8.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
echo (string) $obj;
|
|
|
![]()
Post
#3
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.01.2004 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
nawet i bez trim(), takie rozwiazanie wyświetla "Object id #1".
-------------------- |
|
|
![]()
Post
#4
|
|
![]() Grupa: Przyjaciele php.pl Postów: 2 196 Pomógł: 2 Dołączył: 17.01.2004 Skąd: Sosnowiec Ostrzeżenie: (0%) ![]() ![]() |
A nie możesz wykonać tych dodatkowych operacji wewnątrz __toString() ?
-------------------- |
|
|
![]()
Post
#5
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.01.2004 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
nie nie mogę, bo to tylko jeden z przykładów.
Zawsze jak piszę na tym forum to używam najprostszych przykładów. Ten post edytował Krzychur 22.06.2005, 16:02:56 -------------------- |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 179 Pomógł: 0 Dołączył: 8.10.2004 Ostrzeżenie: (0%) ![]() ![]() |
Najpierw zapisz w zmiennej, a później rób trim:
$str = (string) $obj; echo trim($str). Musi działać. |
|
|
![]()
Post
#7
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.01.2004 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
chmolu, oczywiście, że to będzie działać, ale
Cytat("Ja - 1st post") (...) bez przypisywania jej do kolejnej zmiennej.
-------------------- |
|
|
![]()
Post
#8
|
|
![]() Grupa: Zarejestrowani Postów: 2 262 Pomógł: 21 Dołączył: 3.05.2004 Skąd: Sopot, Krakow, W-wa Ostrzeżenie: (0%) ![]() ![]() |
Nie da się - skąd php ma wiedzieć co wypisać - może tą własność klasy chcesz wypissać a inne nie - przecież php nie zgadnie tego
![]() -------------------- Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
|
|
|
![]()
Post
#9
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Jak podaje nasz kochany manual:
Cytat It is worth noting that the __toString method will only be called when it is directly combined with echo() or print().
http://pl.php.net/manual/en/language.oop5.magic.php -------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 214 Pomógł: 0 Dołączył: 3.01.2004 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
NO więc właśnie, dzięki za wyskrobanie tego zasobu...
A do NuLL: No poprzedzając we wcześniejszych wersjach php obiekt samym słowem echo, php też mógłby zgadywać co mam na myśli... Tylko w tej go tego nauczyli ![]() Ten post edytował Krzychur 22.06.2005, 19:05:01 -------------------- |
|
|
![]()
Post
#11
|
|
![]() Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Szkoda ze to __toString() jest takie jakie jest, praktycznie bezuzyteczne -- a nie takie jakie w Javie -- gdzie dziala tak jak mozna by od niego oczekiwac.
-------------------- Nie lubię jednorożców.
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 134 Pomógł: 0 Dołączył: 27.01.2005 Skąd: Białystok Ostrzeżenie: (0%) ![]() ![]() |
@dr_bonzo -> Ja myślę, że w PHP5.1 może wreszcie będzie.
-------------------- |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 12.07.2025 - 09:24 |