Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] Funkcja
artekp999
post 28.08.2012, 10:57:14
Post #1





Grupa: Zarejestrowani
Postów: 118
Pomógł: 2
Dołączył: 25.02.2011

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


Stwierdziłem że aby zoptymalizować mój kod muszę poużywać funkcji. Mam problem z przypisywaniem zmiennej, jeżeli zamiast zmiennej $video_zdjecie używam echo wszystko działa ale ja potrzebuje żeby zapisywało to do zmiennej.
  1. // Początek kodu zaraz po <body>
  2. function video_czy_zdjecie($obrazek_spr)
  3. {
  4. $formaty_graficzne = array("jpg", "jpeg", "png", "gif", "tiff", "bmp", "svg");
  5. $format = explode(".", $obrazek_spr);
  6. $rozszerzenie = strtolower($format[1]);
  7.  
  8. if (in_array($rozszerzenie, $formaty_graficzne)) {
  9. $video_zdjecie = '<img src="/zdjecia/'.$obrazek_spr.'"/>';
  10. }
  11. else
  12. $video_zdjecie = '<iframe width="600" height="300" src="https://www.youtube.com/embed/'.$obrazek_spr.'" frameborder="0" allowfullscreen></iframe>';
  13. }
  14.  
  15. // kilkadziesiąt linijek dalej
  16. video_czy_zdjecie($rekord[obrazek]);
  17. echo $video_zdjecie;


Ten post edytował artekp999 28.08.2012, 10:57:36
Go to the top of the page
+Quote Post
rocktech.pl
post 28.08.2012, 11:34:38
Post #2





Grupa: Zarejestrowani
Postów: 587
Pomógł: 131
Dołączył: 8.02.2010

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


Witam.

Funkcje powinny zwracać wartość a nie ją wyrzucać na ekran.

  1. function video_czy_zdjecie( $obrazek_spr ) {
  2.  
  3. return $video_zdjecie;
  4. }
  5.  
  6. echo video_czy_zdjecie ( $obrazek_spr );


Zerknij też na http://php.net/manual/en/functions.anonymous.php.

Ten post edytował rocktech.pl 28.08.2012, 11:37:48


--------------------
Despite the tons of examples and docs, mod_rewrite is voodoo. Damned cool voodoo, but still voodoo. --Brian Moore

I never go looking for a sucker. I look for a Champion and make a sucker of of him. --Amarillo Slim


Home-made : js-gui-classes | Accordion | Tabs | Carousel / php-sms-classes | Obsługa bramki SMS MultiInfo | Obsługa bramki SMS Mobiltek
Go to the top of the page
+Quote Post
pamil
post 28.08.2012, 14:54:51
Post #3





Grupa: Zarejestrowani
Postów: 97
Pomógł: 15
Dołączył: 12.08.2012
Skąd: Zabrze

Ostrzeżenie: (10%)
X----


Twoja funkcja sparwdza ciąg między pierwszą kropką a drugą. Czyli "szablon.jpg.avi" w twoim skrypcie ma rozszerzenie jpg.
Po drugie, twoja funkcja video_czy_zdjecie() powinna zwracać 'video' lub 'zdjecie', sama konstrukcja lingwistyczna pytania "Viedo czy zdjęcie?" nakazuje albo odpowiedź "Video!", albo "Zdjęcie".
Ty za to chcesz zwrócić kod HTML który wyświetla dany zasób.
Go to the top of the page
+Quote Post
artekp999
post 28.08.2012, 21:39:04
Post #4





Grupa: Zarejestrowani
Postów: 118
Pomógł: 2
Dołączył: 25.02.2011

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


Ok czyli muszę to inaczej rozwiązać

pamil
1. Z fragmentu tego kodu do dobrze wnioskujesz. Ale w połączeniu z całym kodem którego tu nie umieściłem działa dobrze, ponieważ wcześniej w formularzu inaczej sprawdza rozszerzenie. A z tym video_czy_zdjecie to było pisane na szybko aby znaleźć dobre rozwiązanie a później odpowiednio przerobić.
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.07.2025 - 17:09