Skip to content
This repository was archived by the owner on Oct 11, 2019. It is now read-only.

Documentation(ID)

aradeas edited this page Nov 24, 2015 · 2 revisions

Instalasi

Cara terbaik untuk menginstal O2Session adalah dengan menggunakan [Komposer] (https://getcomposer.org)

composer require o2system/o2session:"dev-master"

Inisialisasi Session

Session biasanya akan berjalan secara global dalam setiap halaman, sehingga Class Session harus di inisialisasi terlebih dahulu di bootstrap aplikasi anda, untuk sebagian besar Class Session berjalan di belakang latar, agar pada saat di butuhkan untuk membaca, membuat maupun mengupdate session bisa langsung di gunakan tanpa menginisialisasi ulang.

use O2System\Session;

$session = new Session(array(
    'storage' => array(
        'name' => 'session_name',
        'driver' => 'files',
        'save_path' => 'path/to/session/storage',
        'lifetime' => 3600,
        'regenerate_time' => 600,
        'regenerate_id' => FALSE,
        'match_ip' => TRUE
    ),
    'cookie' => array(
        'prefix' => 'cookie_',
        'lifetime' => 7200,
        'domain' => '',
        'path' => '/',
        'secure' => FALSE,
        'httponly' => TRUE
    )
));

$session akan digunakan sebagai variabel contoh di halaman dokumentasi ini.

Set Data Session

Menetapkan data ke array Session userdata .

/*
 * @param string  $item   Array kunci / nilai untuk ditetapkan sebagai data session, atau kunci untuk satu item.
 * @param mixed   $value  Nilai untuk mengatur sesi tertentu, jika $data sebagai kunci.
 *
 * @return void
 */
// method 1:
$session->set_userdata('ITEM_NAME', 'ITEM_VALUE');

// method 2:
$session->set_userdata(array(
    'username' => 'o2system',
    'email' => 'user@o2system.in,
    'is_logged_in' => TRUE
));

Setiap data yang kita tetapkan untuk userdata session akan tersedia juga dalam Bahasa PHP $_SESSION superglobal.

Mendapatkan data dari Session

Mendapatkan nilai untuk item $_SESSION tertentu, atau sebuah array dari semua "userdata" item jika tidak kunci.

/*
 * @param string|null  $item   Session item key or NULL
 *
 * @return mixed|null
 */
// method 1 (using userdata method):
$session->userdata('ITEM_NAME');    // for backwards compatibility, through userdata() method

// method 2 (using magic getter):
$session->{'ITEM_NAME'};

// method 3 (native PHP Session):
$_SESSION['ITEM_NAME'];

Di mana 'item' adalah kunci dari array yang sesuai dengan item yang Anda ingin dapatkan.

Verifikasi data Session

Memverifikasi nilai session berdasarkan nama kunci dari array session userdata.

/*
 * @param string  $item Session item key
 *
 * @return bool
 */
$session->has_userdata('ITEM_NAME');

// Using Native PHP Session Variable
isset($_SESSION['ITEM_NAME'])

Hapus data dari Session

Hapus nilai sesi dari userdata array, berdasarkan pada nama kuncinya.

/*
 * @param string|array  $item Kunci untuk item data Session untuk disetel, atau array beberapa kunci.
 *
 * @return bool
 */
// Single Removal
// method 1:
$session->unset_userdata('ITEM_NAME');

// method 2:
unset($_SESSION['ITEM_NAME']);

// Multiple Items Removal
$session->unset_userdata(['ITEM_1', 'ITEM_2');

// method 2:
unset($_SESSION['ITEM_1'], $_SESSION['ITEM_2']);

Flash data Session

Menandai kunci session userdata (atau beberapa data sekaligus) sebagai "flashdata".

/*
 * @param string|array  $item Key to mark as "flashdata", or an array of multiple keys.
 *
 * @return bool
 */
// Single Flash Marking
// method 1:
$session->mark_flashdata('ITEM_NAME');

// Multiple Flash Marking
$session->mark_flashdata(['ITEM_1', 'ITEM_2');

Unset Flash Data Session

Menghilangkan tanda kunci sesi barang userdata (atau beberapa data sekaligus) sebagai "flashdata".

/*
 * @param string|array  $item Key to mark as "flashdata", or an array of multiple keys.
 *
 * @return bool
 */
// Single Flash Marking
// method 1:
$session->unset_flashdata('ITEM_NAME');

// Multiple Flash Marking
$session->unset_flashdata(['ITEM_1', 'ITEM_2');

Mendapatkan flash data dari Session menyeluruh

Mendapat daftar semua userdata sesi yang telah ditandai sebagai "flashdata".

/*
 * @return array Array containing the keys of all "flashdata" items.
 */
$session->get_flash_keys();

Mendapatkan flash data dari Session satuan

Mendapat nilai untuk sesi barang userdata tertentu yang telah ditandai sebagai "flashdata", atau array dari semua "flashdata" item jika tidak ada kunci yang ditentukan.

/*
 * @param string|null $item Flashdata item key or NULL
 *
 * @return mixed Value of the specified item key, or an array of all "flashdata"
 */
$session->flashdata('ITEM_NAME');

Mempertahankan Session Flashdata tetap ada

Mempertahankan kunci sesi yang ditentukan userdata (s) sebagai "flashdata" melalui permintaan berikutnya.

/*
 * @param string|array $item Flashdata key to keep, or an array of multiple keys
 *
 * @return bool
 */
// Single Item Retaining
$session->keep_flashdata('ITEM_NAME');

// Multiple Items Retaining
$session->keep_flashdata(['ITEM_1', 'ITEM_2']);

Mengatur Session flashdata

Memberikan data ke userdata sesi dan menandai sebagai "flashdata".

/*
 * @param string  $item   Array kunci  / nilai untuk ditetapkan sebagai data sesi, atau kunci untuk satu item.
 * @param mixed   $value  Nilai untuk mengatur  item sesi tertentu, jika $data sebagai kunci.
 *
 * @return void
 */
// method 1:
$session->set_flashdata('ITEM_NAME', 'ITEM_VALUE');

// method 2:
$session->set_flashdata(array(
    'foo' => 'bar',
    'message' => 'flash message'
));

Temp Session Data

Menandai kunci sesi userdata (atau beberapa data) sebagai "TempData".

/*
 * @param string|array  $item Key to mark as "tempdata", or an array of multiple keys.
 * @param int           $ttl  Time-to-live value for the tempdata, in seconds
 *
 * @return bool
 */
// Single Temp Marking
// method 1:
$session->mark_tempdata('ITEM_NAME', 300);

// Multiple Temp Marking
$session->mark_tempdata(['ITEM_1', 'ITEM_2', 300);

Menghapus Temp Session Data

Menghilangkan tanda kunci sesi userdata (atau beberapa data) sebagai "TempData".

/*
 * @param string|array  $item Key to mark as "tempdata", or an array of multiple keys.
 *
 * @return bool
 */
// Single Flash Marking
// method 1:
$session->unset_tempdata('ITEM_NAME');

// Multiple Flash Marking
$session->unset_tempdata(['ITEM_1', 'ITEM_2');

Mendapatkan Temp Session Kunci data

Mendapat daftar semua userdata sesi yang telah ditandai sebagai "TempData".

/*
 * @return array Array containing the keys of all "flashdata" items.
 */
$session->get_temp_keys();

Mendapatkan Temp Session Data

Mendapat nilai untuk sesi userdata tertentu yang telah ditandai sebagai "TempData", atau array dari semua "TempData" item jika tidak ada kuci yang ditentukan.

/*
 * @param string|null $item Tempdata item key or NULL
 *
 * @return mixed Value of the specified item key, or an array of all "tempdata"
 */
$session->tempdata('ITEM_NAME');

Mengatur data Temp Session

memasukan data kedalam session userdata dan mendandainya sebagai "tempdata".

/*
 * @param string  $item   An array of key/value pairs to set as session data, or the key for a single item.
 * @param mixed   $value  The value to set for a specific session item, if $data is a key.
 *
 * @return void
 */
// method 1:
$session->set_tempdata('ITEM_NAME', 'ITEM_VALUE');

// method 2:
$session->set_tempdata(array(
    'foo' => 'bar',
    'message' => 'flash message'
));

Memeriksa Session yang telah dimulai

Memeriksa apakah sesi telah dimulai.

/*
 * @return bool
 */
$session->is_started();

Regenerasi ID Session

Regenerasi ID Session, opsional untuk menghapus semua data Session saat ini.

/*
 * @param bool $destroy Whether to destroy session data
 */
$session->regenerate_id(TRUE);

Hapus Session

Hapus Session saat ini

/*
 * @param bool $destroy Whether to destroy session data
 */
$session->regenerate_id(TRUE);