Maison > développement back-end > Problème PHP > Comment implémenter la loterie en php

Comment implémenter la loterie en php

藏色散人
Libérer: 2023-03-17 16:30:01
original
5896 Les gens l'ont consulté

Comment implémenter la loterie en PHP : 1. Créez un exemple de fichier PHP ; 2. Définissez les prix appartenant à la cagnotte ; 3. Organisez une loterie aléatoire via la méthode "shuffle($prize);" ($prize[0 ]);" Imprimez simplement les résultats de la loterie.

Comment implémenter la loterie en php

L'environnement d'exploitation de ce tutoriel : système Windows 10, PHP version 8.1, ordinateur DELL G3

Comment implémenter la loterie avec php ?

Exemple de code pour PHP pour implémenter un système de loterie

1. Loterie aléatoire

La loterie aléatoire est bien sûr la loterie la plus juste, c'est-à-dire que lorsque l'utilisateur tire à la loterie, les résultats de la loterie sont renvoyés de manière aléatoire

Ce résultat est complètement aléatoire et non soumis au contrôle humain, le gain dépend entièrement de la chance

Définissez d'abord les prix dans la cagnotte Une fois que l'utilisateur entre dans la loterie, les prix dans la cagnotte seront restitués au hasard

<?php
$prize = [&#39;60寸大彩电&#39;, &#39;iphone13&#39;, &#39;戴森吸尘器&#39;, &#39;索尼微单&#39;, &#39;VR眼镜&#39;, &#39;谢谢参与&#39;];
 
// 当有用户进来抽奖,进行随机抽奖
shuffle($prize);
 
// 抽奖结果
print_r($prize[0]);
Copier après la connexion

2. Loterie de probabilité.

La loterie de probabilité consiste en fait à définir la probabilité d'obtenir un prix. Généralement, les prix de grande valeur seront extrêmement faibles.

Ce type de loterie est également une sorte de loterie aléatoire, mais il n'y a pas de loterie aléatoire. sans contrôle de probabilité comme ci-dessus

Gagner le grand prix nécessite beaucoup de chance, et la plupart des gens le feront. Des prix de faible valeur

<?php
$prize = [
    [&#39;name&#39; => &#39;60寸大彩电&#39;, &#39;chance&#39; => 100],
    [&#39;name&#39; => &#39;iphone13&#39;, &#39;chance&#39; => 900],
    [&#39;name&#39; => &#39;戴森吸尘器&#39;, &#39;chance&#39; => 1000],
    [&#39;name&#39; => &#39;索尼微单&#39;, &#39;chance&#39; => 2000],
    [&#39;name&#39; => &#39;VR眼镜&#39;, &#39;chance&#39; => 3000],
    [&#39;name&#39; => &#39;谢谢参与&#39;, &#39;chance&#39; => 3000]
];
 
// 概率重组
$chance = 0;
foreach ($prize as &$item) {
    $chance += $item[&#39;chance&#39;];
    $item[&#39;chance&#39;] = $chance;
}
 
// 随机抽奖
$rand = mt_rand(1, 10000);
 
$result = [];
foreach ($prize as $_k => $_v) {
    if ($_k == 0) {
        if ($rand > 0 && $rand <= $_v[&#39;chance&#39;]) {
            $result = $_v;
            break;
        }
    } else {
        if ($rand > $prize[$_k - 1][&#39;chance&#39;] && $rand <= $_v[&#39;chance&#39;]) {
            $result = $_v;
            break;
        }
    }
}
 
// 抽奖结果
echo json_encode(compact(&#39;rand&#39;, &#39;result&#39;));
Copier après la connexion

3. Loterie définitive

La loterie définitive est une méthode de loterie couramment utilisée lors des réunions annuelles. Afin de récompenser ceux qui ont apporté une contribution significative à l'entreprise cette année

, l'entreprise choisit de tirer des prix désignés lors de l'assemblée annuelle. Les offrir à ces personnes

peut non seulement apporter des encouragements à ces personnes, mais aussi renforcer la communauté. cohésion de l'entreprise

Dans ce modèle de loterie, les prix ont été liés aux personnes désignées plus tôt

Seulement lorsque la personne désignée entre. Vous pouvez tirer des prix, et tout le monde vous remercie d'avoir participé, mais les utilisateurs ne le savent pas c'est prédéterminé

<?php
$prize = [
    [&#39;name&#39; => &#39;60寸大彩电&#39;, &#39;winners&#39; => [&#39;张三&#39;]],
    [&#39;name&#39; => &#39;iphone13&#39;, &#39;winners&#39; => [&#39;李四&#39;, &#39;王五&#39;]],
    [&#39;name&#39; => &#39;戴森吸尘器&#39;, &#39;winners&#39; => [&#39;亮仔&#39;]],
    [&#39;name&#39; => &#39;索尼微单&#39;, &#39;winners&#39; => [&#39;李六&#39;]],
    [&#39;name&#39; => &#39;VR眼镜&#39;, &#39;winners&#39; => [&#39;小明&#39;]]
];
 
// 开始抽奖,这里假如亮仔过来抽
// 这里的用户也可以是用户唯一标识
$user = &#39;亮仔&#39;;
 
$result = &#39;谢谢参与&#39;;
foreach ($prize as $item) {
    if (in_array($user, $item[&#39;winners&#39;])) {
        $result = $item[&#39;name&#39;];
        break;
    }
}
 
print_r(&#39;获得的奖品:&#39; . $result);
Copier après la connexion

Apprentissage recommandé : "Tutoriel vidéo PHP"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal