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

Błąd: redeclare html()

0 głosów
103 wizyt
pytanie zadane 7 listopada 2016 w PHP przez molik Użytkownik (900 p.)
edycja 7 listopada 2016 przez molik

Cześć!

Nie mogę uporać się z pewnym problemem. Rozumiem, że jest ponownie zadeklarowane.. ale nie wiem o co tu chodzi: 

Błąd: 

Fatal error: Cannot redeclare html() (previously declared in /nauka/php/test/includes/helpers.inc.php:2) in /nauka/php/test/includes/helpers.inc.php on line 4

<?php
    function html($text){
        return htmlspecialchars($text, ENT_QUOTES, 'UTF-8');
    }

    function htmlout($text){
        echo html($text);
    }
?>

 

2 odpowiedzi

+1 głos
odpowiedź 7 listopada 2016 przez HaKIM Szeryf (87,770 p.)

Zmień kod z plain-text na php.

Dziwne, ale mi śmiga:

<?php
    function html($text){
        return htmlspecialchars($text, ENT_QUOTES, 'UTF-8');
    }
 
    function htmlout($text){
        echo html($text);
    }
    echo html('Hello World');
    htmlout('Hello World');

Jest to jedyny plik czy może jakoś połączony z innymi?

komentarz 7 listopada 2016 przez molik Użytkownik (900 p.)
nie, nie.. jest to jedyny.. wlasnie dlatego nie wiem o co tu chodzi...

Sorry ale nie wiem jak zmienić plain-text ;/
komentarz 7 listopada 2016 przez HaKIM Szeryf (87,770 p.)

Możesz to objeść if'em.

Choć, ja bym polecił użył i zalecał przestrzeń nazw.

namespace MyHtml{
        function html($text){
        return htmlspecialchars($text, ENT_QUOTES, 'UTF-8');
    }
 
    function htmlout($text){
        echo html($text);
    }
    
    echo html('Hello World');
    htmlout('Hello World');
}

namespace SomeLibrary{
    function html($text, $text2) {
        return "Hello { $text } & { $text2 }";
    }
}

Śmiga cacy.

Tutaj możesz przetestować:

http://sandbox.onlinephpfunctions.com/

Zanim zadasz pytanie jak wywołać funkcję html() z przestrzeni nazw przejżyj:

http://php.net/manual/pl/language.namespaces.php

komentarz 7 listopada 2016 przez molik Użytkownik (900 p.)
Niestety do przestrzeni nazw jeszcze nie doszedłem i nie wiem jak one działają, więc jak powinienem rozwiązać ten problem
komentarz 7 listopada 2016 przez HaKIM Szeryf (87,770 p.)
edycja 7 listopada 2016 przez HaKIM

To dojdź.

Wszystko wytłumaczone w manualu.

W skrócie:

Plik index.php

print \MyHtml\html('HelloWorld');

Bez umiejętności posługiwania się dokumentacją daleko nie zajdziesz.

No, chyba że chcesz być kolejną koparką w korpo. wink

Trochę więcej kodu:

namespace MyHtml{
 
        function html($text){
            return htmlspecialchars($text, ENT_QUOTES, 'UTF-8');
        }
   
    function htmlout($text){
        echo html($text);
    }
}
  
namespace SomeLibrary{
    function html($text, $text2) {
        return "Hello { $text } & { $text2 }";
    }
}
 
namespace Index{
    print \MyHtml\html('Hello');
}

Nie wkurzaj się na styl - kod był robiony tak se o.

http://www.php-fig.org/psr/

komentarz 7 listopada 2016 przez molik Użytkownik (900 p.)
Ok dzięki
komentarz 7 listopada 2016 przez HaKIM Szeryf (87,770 p.)

Jak nie będziesz potrafił zaimplementować poprzez namespace daj znać. Acz, przeczytanie introduction w manual'u o namespace'ach powinno rozwiązać wszelkie wątpliwości.

0 głosów
odpowiedź 7 listopada 2016 przez CzikaCarry Szeryf (75,440 p.)

Fatal error: Cannot redeclare html() (previously declared in /nauka/php/test/includes/helpers.inc.php:2) in /nauka/php/test/includes/helpers.inc.php on line 4

komentarz 7 listopada 2016 przez molik Użytkownik (900 p.)
Dokładnie.. Wcześniej zadeklarowane w /nauka/php/test/includes/helpers.inc.php:2

Podobne pytania

0 głosów
1 odpowiedź 39 wizyt
0 głosów
1 odpowiedź 54 wizyt
Porady nie od parady
Zadając pytanie postaraj się o odpowiedni tytuł, kategorię oraz tagi.Tagi

85,728 zapytań

134,512 odpowiedzi

298,568 komentarzy

56,635 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...