$myAppliz->user(string $action, array $fields, string|array $user_id, ?array $options): array|object

Avec le paramètre get cette méthode retourne les données de l'utilisateur user_id.

$myAppliz->user(string $action, array $key_val, string|array $user_id): bool

Avec le paramètre store cette méthode permet de sauvegarder des informations sur l'utilisateur user_id.
Elle retourne true en cas de succès et false en cas d'erreur.

ParamètresDescription
action
string
Les actions disponibles.
get
Pour obtenir des informations sur l'utilisateur.
store
Pour sauvegarder des informations sur l'utilisateur.
fields
array
Liste des données à retourner.
user_id
string|array
L'identifiant de l'utilisateur à retourner.
keys_vals
array
Un tableau de données d'utilisateur personnalisées à ajouter, remplacer ou supprimer.
{$champ_personnalisé}
Valeur personnalisée à créer ou remplacer (maximum 9 000 caractères).
{$champ_personnalisé}.{$var}
Créer ou remplace la valeur {$var} sans remplacer intégralement {$champ_personnalisé}.
$unset
{$champ_personnalisé} ou {$champ_personnalisé}.{$var} ou tableau de champs personnalisés à supprimer.
options
array
Options (facultatif).
FieldsDescription
id
string
L'identifiant de l'utilisateur. Cet identifiant est unique par Appliz et ne peut pas être utilisé par une autre.
first_name
string
Le prénom de l'utilisateur.
last_name
string
Le nom de famille de l'utilisateur.
gender
string
Le genre de l'utilisateur.
male
Homme
female
Femme
perms
array|object
Liste des permissions accordées par l'utilisateur.
send_sms
L'utilisateur autorise votre Appliz à lui envoyer des sms.
send_mail
L'utilisateur autorise votre Appliz à lui envoyer des mails.
birthday
array|object
La date de naissance et l'age de l'utilisateur.
datetime
string
La date de naissance de l'utilisateur selon datetime_format.
age
int
L'age de l'utilisateur.
register_time
array|object
La date d'inscription.
appliz['datetime']
string
La date d'inscription à votre Appliz selon datetime_format.
myAppliz['datetime']
string
La date d'inscription à myAppliz selon datetime_format.
user
string
L'identifiant myAppliz de l'utilisateur (qui n'est pas unique par Appliz).
Permet par exemple de repérer un utilisateur qui s'est désinscrit puis ré-inscrit à votre Appliz.
perso_{$var}
string|int|float|array|object|bool
Un champ personnalisé définit via le paramètre store.
me
bool
Si le champ est présent, il s'agit de l'utilisateur connecté.
OptionsDescription
datetime_format
string
Format des dates.

Valeur par défaut : c
include_uninstall
bool
Pour inclure ou non les utilisateurs ayant désinstallés votre Appliz. Cette option est prioritaire sur le paramètre général de la configuration.
true
Inclus les utilisateurs ayant désinstallé votre Appliz dans les résultats.
false
Exclu les utilisateurs ayant désinstallé votre Appliz dans les résultats (valeur par défaut).

Exemple

try

{
    
$user $myAppliz->user('get', ['id''last_name''first_name''gender''register_time'], '5f54a4eef845d309f1048384');
}
catch(
Exception $e)
{
    
error_log('Erreur API myAppliz : '.$e->getMessage());
    echo 
'Une erreur s\'est produite, veuillez réessayer ultérieurement.';
    exit();
}

echo 
'<pre>'htmlspecialchars(print_r($usertrue)) .'</pre>';

Résultat :

Array
(
    [id] => 5f54a4eef845d309f1048384
    [user] => 5e0f43aa37319177f84c4012
    [register_time] => Array
		(
			[appliz] => Array
				(
					[datetime] => 2023-11-11T12:24:23+00:00
				)

			[myAppliz] => Array
				(
					[datetime] => 2020-09-06T08:59:26+00:00
				)

		)

	[first_name] => alexis
	[last_name] => bonnyaud
	[gender] => male
	[me] => 1
)

Exemple

$user $myAppliz->user('get', ['first_name''birthday'], '5f54a4eef845d309f1048384', ['datetime_format' => 'd/m']);

// Comme dans l'exemple précédent vous pouvez ajouter un bloc try/catch pour gérer les erreurs.

if(!empty($user))
{
    
$user['first_name'] = htmlspecialchars($user['first_name']);
    
// Sécurité contre les injections XSS
    
    
$user['first_name'] = ucfirst($user['first_name']);
    
// Pour mettre une majuscule à la première lettre du prénom
    
    
echo 'Bonjour '$user['first_name'] .', vous êtes né le '$user['birthday']['datetime'] .' ('$user['birthday']['age'] .' ans).';
}

Résultat :

Bonjour Alexis, vous êtes né le 18/02 (28 ans).

Exemple

$store $myAppliz->user('store', [


    [
'description' => 'Homines enim eruditos et sobrios ut infaustos.'],
    
// créer ou modifie le champ « perso_description »

    
['dates.search' => '20/12/2021'],
    
// créer ou modifie le champ « perso_dates['search'] » sans réinitialiser « perso_dates »

    
[
        
'settings' => [
            
'menu1' => 'open',
            
'menu2' => 'open',
            
'locale' => 'fr',
        ]
    ],
    
// créer ou écrase « perso_settings »

    
['settings.menu2' => 'close'],
    
// modifie la valeur du champ « perso_settings['menu2'] »

    
'$unset' => ['credits''bio''dates.login']
    
// supprime les champs « perso_credits », « perso_bio » et « perso_dates['login'] »

], '5f54a4eef845d309f1048384');
// vous pouvez ajouter un bloc try/catch pour gérer les erreurs.

if($store// vérifie si l'opération store s'est bien passée
{
    
$user $myAppliz->user('get', ['first_name''last_name''perso_description''perso_settings''perso_dates''perso_credits'], '5f54a4eef845d309f1048384');
    
    echo 
'<pre>'htmlspecialchars(print_r($usertrue)) .'</pre>';
}

Résultat :

Array
(
    [perso_dates] => Array
        (
            [search] => 20/12/2021
        )

    [perso_description] => Homines enim eruditos et sobrios ut infaustos.
    [perso_settings] => Array
        (
            [menu1] => open
            [menu2] => close
            [locale] => fr
        )

    [first_name] => alexis
    [last_name] => bonnyaud
    [me] => 1
)