Classe xoopsObject
Fichier kernel/object.php
Classe de base dont sont dérivées toutes les classes du
kernel (xoopsComment, xoopsGroup, xoopsUser,....)
Permet de créer des classes dérivées, héritant
des variables et méthodes.
Types de données
Paramêtre pour initVar |
Type de donnée |
Paramêtres format
pour getVar |
Testé * |
XOBJ_DTYPE_TXTBOX |
Donnée de type texte |
s, show, e ,edit, f, formpreview, n, none |
OK |
XOBJ_DTYPE_TXTAREA |
Zone de texte |
s, show, e ,edit, f, formpreview, n, none |
OK |
XOBJ_DTYPE_INT |
Entier (integer) |
|
OK |
XOBJ_DTYPE_URL |
Url |
|
OK |
XOBJ_DTYPE_EMAIL |
Email |
|
OK |
XOBJ_DTYPE_ARRAY |
Tableau |
|
? |
XOBJ_DTYPE_OTHER |
Autres (type mime, répertoire, fichier,...) |
|
OK |
XOBJ_DTYPE_SOURCE |
Source |
s, show, e ,edit, f, formpreview, n, none |
OK |
XOBJ_DTYPE_STIME |
Date/time |
|
? |
XOBJ_DTYPE_MTIME |
Date/time |
|
? |
XOBJ_DTYPE_LTIME |
Date/time |
|
? |
* Testé : type de donnée testé personnellement et/ou
utilisé par le core ou modules officiels.
initVar
Initialisation de la variable dont le nom est passé
en paramêtre
initVar (string $key, int $data_type, [mixed
$value = null], [bool $required = false], [int $maxlength = null],
[mixed $options = ''], string $option)
$key |
string |
nom |
$data_type |
int |
type de donnée: détermine le 'text sanitizing' |
$value |
'mixed' |
Valeur par défaut |
$required |
bool |
Donnée obligatoire ou non |
$maxlength |
int |
Texte uniquement:longueur du champ |
$option |
'mixed' |
Option |
Exemple classe XoopsUser
function XoopsUser($id
= null)
{
$this->initVar('uid', XOBJ_DTYPE_INT, null, false);
$this->initVar('name',
XOBJ_DTYPE_TXTBOX, null, false, 60);
$this->initVar('email', XOBJ_DTYPE_TXTBOX, null, true, 60);
$this->initVar('url', XOBJ_DTYPE_TXTBOX, null, false, 100);
$this->initVar('user_sig', XOBJ_DTYPE_TXTAREA, null, false,
null);
$this->initVar('theme', XOBJ_DTYPE_OTHER, null, false);
$this->initVar('timezone_offset', XOBJ_DTYPE_OTHER, null,
false);
|
setVar
Assigne une valeur à la variable
setVar (string $key, mixed $value, [bool
$not_gpc = false])
$key |
string |
nom de la variable |
$value |
mixed |
valeur à assigner |
$not_gpc |
bool |
|
Exemple de register.php
$newuser->setVar('name', $name);
|
getVar
Retourne la valeur de la variable au format demandé.
getVar (string $key, [string $format = 's'])
Exemple avec $xoopsUser
$xoopsUser->getVar('name')
|
getVars
Retourne toutes les valeurs des variables de l'object sous
forme d'un tableau associatif des paires clef => valeur.
getVars() |
assignVar
Assigne la valeur passée en paramêtre à
la variable
assignVar (string $key, mixed $value)
Exemple (tiré de la fonction insert de la classe
xoopsUser)
$user->assignVar('uid', $uid);
|
assignVars
Assigne le tableau passé en paramêtre à
la variable
assignVars(array $var_arr)
Exemple classe xoopsUser: (assignation à $user des
valeurs extraites de la base)
function &get($id)
{
$sql = 'SELECT * FROM '.$this->db->prefix('users').' WHERE
uid='.$id;
$numrows = $this->db->getRowsNum($result);
$user = new XoopsUser();
$user->assignVars($this->db->fetchArray($result));
return $user;
}
|
cleanVars
Préparation de toutes les variables de l'object pour
enregistrement dans la Bdd, en fonction du type de données
(text sanitize).
Message d'erreur si valeur absent
|
|