Klasa NullableSelectbox

namespace Kei\Webas\DataType

Kontener przeznaczony do przetwarzania danych wejściowych w postaci reprezentacji html elementu select wraz z zawartością. Typ danych może zwracać wartości PHP NULL lub ich odpowiedniki.


Obiekt ten (podobnie jak i wszystkie inne typy danych) dziedziczy po klasie AbstractDataType. Implementuje interfejs NullableDataTypeInterface. Oferuje następujące metody pbliczne

__construct($value) Domyślny konstruktor przetwarzający zmienną $value odpowiedniego formatu.
getValue Zwraca dokładną wartość wynikową lub wartość PHP NULL. Wartość wynikowa jest tablicą asocjacyjną z kluczami: selected, multiselectable, selectbox
__toString Zwraca wynik w formie możliwej do zaprezentowania na ekranie. W tym przypadku jest to wartość aktualnie zaznaczonego (selected) elementu <select>. Przy wartości NULL (pobranej z getNullDataType()) zwraca ciąg znaków pobrany z metody getNullBullet().
getNullBullet Określa ciąg znaków/znak jakim reprezentowany jest typ NULL w panelu Webas.
getNullDataType Określa domyślną wartość typu NULL. Zwykle jest to wartość PHP NULL.

Przykład użycia

W poniższym przykładzie pominięto autoryzację do serwera. Obiekt Client znajduje się w zmiennej $webas. Więcej o autoryzacji przeczytasz w dziale jak rozpocząć ?

Nie zawijaj wierszy<?php
// Autoryzacja...

// W poniższym przykładzie został wykorzystany obiekt InfoTable. Skorzystaj z dokumentacji aby dowiedzieć się więcej na ten temat.
$table = $webas->DnsRecord()->Index()->paginate();
$row = $table->rows[0];     // Pierwszy wiersz
$item = $row[3];            // Czwarta kolumna to obiekt NullableSelectbox

\Kei\Library\Out::p($item->getValue()['selected'][0]['caption']);
\Kei\Library\Out::pd($item);

// Rezultat:
10

\Kei\Webas\DataType\NullableSelectbox Object
(
    [value:protected] => Array
    (
        [selected] => Array
        (
            [0] => Array
            (
                [value] => 10
                [caption] => 10
            )
        )

        [multiselectable] =>
        [selectbox] => Array
        (
            [values] => Array
            (
                [0] => 1
                [1] => 5
                [2] => 10
                [3] => 15
                [4] => 20
            )

            [captions] => Array
            (
                [0] => 1
                [1] => 5
                [2] => 10
                [3] => 15
                [4] => 20
            )
        )
    )
)
Klasa NullableSelectbox · NiceAPI dla PHP 5.6