| 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
|
|