Skocz do zawartości

showError i teoretyczna podatność na parametry


Rekomendowane odpowiedzi

Opublikowano

Witam,

Jak zapewne wiadomo, funkcja showError() wyjątkowo się przydaje się do prezentacji błędów, mimo to, ja znalazłem pewną rzecz, która jest nie do końca przemyślana. Otóż, tworząc taką konstrukcję:

$this->registry->output->showError( array( $this->lang->words['variable'], $variable, $variable ) );

Powodujemy, że drugi 3 element tablicy nie zostanie wzięty pod uwagę. Czemu? Tworzenie tablicy dla zmiennej jest sprawdzane konstrukcją is_array(), i rozbijane na 2 części - zerowy element to tekst, a drugi to dodatek dla funkcji sprintf(). Wszystko idealnie, ale zakładając, że potrzebuje dwóch parametrów, nie uzyskamy ich! Po co to piszę? Dziś oglądnę to i poprawię na ilość parametrów zależną do programisty. Oczywiście, gotowy kod wyślę do IPS z propozycją poprawy tego nieprzemyślanego kroku.

Pozdrawiam,

Largo

Jeżeli Ci pomogłem, nie zapomnij proszę o kliknięciu - add.png

Możesz liczyć na moją pomoc z zakresu: PHP5, MySQL, JavaScript i Ajax | W trakcie nauki CSS i xHTML!

W sprawie pomocy z zakresu IP.Board służę pomocą w dziale Zaawansowane programowanie IP.Board

Proszę o nie wysyłanie próśb PW o prywatną pomoc - pomagam JEDYNIE na forum lub na zlecenie!

  • Manager
Opublikowano

Hej,

dlaczego nieprzemyślany? Wg mnie bardzo przemyślany. Dwa parametry? Proszę, nawet dla trzech Ci napiszę:

$this->lang->words['error_string'] = sprintf( $this->lang->words['error_string'], $variable1, $variable2, $variable3 );
$this->registry->output->showError( 'error_string' );

Oczywiście wpis wyglądać ma tak:

Pierwsza zmienna %s, druga %s, trzecia %s.

intermedia - profesjonalne rozwiązania Invision Power Board

---

Chcesz uzyskać szybko i sprawnie pomoc? Uzupełnij wersję i adres w profilu.

Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

Zarejestruj nowe konto

Załóż nowe konto. To bardzo proste!

Zarejestruj się

Zaloguj się

Posiadasz już konto? Zaloguj się poniżej.

Zaloguj się
  • Ostatnio przeglądający   0 użytkowników

    • Brak zarejestrowanych użytkowników przeglądających tę stronę.
×
×
  • Dodaj nową pozycję...

Powiadomienie o plikach cookie

Umieściliśmy na Twoim urządzeniu pliki cookie, aby pomóc Ci usprawnić przeglądanie strony. Możesz dostosować ustawienia plików cookie, w przeciwnym wypadku zakładamy, że wyrażasz na to zgodę.