>  기사  >  백엔드 개발  >  PHP에서 매일 포인트에 포인트를 추가하는 방법

PHP에서 매일 포인트에 포인트를 추가하는 방법

藏色散人
藏色散人원래의
2021-12-16 09:43:181450검색

PHP에서 일일 포인트를 추가하는 방법: 1. 데이터 테이블에 로그인 시간 필드를 추가합니다. 2. 하루 중 0시간, 0분, 0초를 사용하여 마지막 로그인 시간과 비교합니다. if($ lastLogintime < $today) {...}"를 사용하여 포인트를 늘릴 수 있습니다.

PHP에서 매일 포인트에 포인트를 추가하는 방법

이 기사의 운영 환경: Windows 7 시스템, PHP 버전 7.4, Dell G3 컴퓨터.

PHP에서 매일 포인트에 포인트를 추가하는 방법은 무엇입니까?

php는 하루에 여러 번 로그인하고 한 번만 포인트를 얻는 것을 실현합니다.

인터넷에서 많은 사례를 찾았는데 모두 똑같다고 느꼈고 일부는 상당히 번거로워서 직접 시도하고 방법 이 기능을 구현합니다

이 기능을 구현하기 위해 데이터 테이블에 마지막 로그인 시간을 나타내는 logintime 필드를 추가한 다음, 마지막 로그인 시간인 경우 오늘의 0:00:00을 사용하여 마지막 로그인 시간과 비교했습니다. 로그인 시간이 이 시간보다 길면 로그인했다는 의미입니다. 마지막 로그인 시간이 이 시간보다 작을 경우 처음 로그인했다는 의미이며 포인트가 늘어납니다.

위 코드:

// 判断是否是一天中第一次登录
// 上一次登陆的时间
$lastLogintime = $userinfo[&#39;logintime&#39;];
// 一天中的零时零分零秒
$today = strtotime(date(&#39;Y-m-d&#39;));
if($lastLogintime < $today) {
    // 一天中第一次登录增加积分(关联更新)
    // 注意:使用关联更新数据的时候需要传递两次id
    $data[&#39;id&#39;] = $userinfo[&#39;id&#39;];
    $data[&#39;userinfo&#39;] = array(
        &#39;points&#39; => $userinfo[&#39;points&#39;] + C(&#39;LOGIN&#39;),
    );
    $user->relation(true)->where(array(&#39;id&#39;=>$userinfo[&#39;id&#39;]))->save($data);
}

수정이 필요하다는 점에 유의하세요. 로그인 시간:

// 更新登录时间和登录ip
$updateData = array(
    &#39;id&#39; => $userinfo[&#39;id&#39;],
    &#39;userinfo&#39; => array(
        &#39;logintime&#39; => time(),
        &#39;loginip&#39; => getIP(),
    ),
);
$user->relation(true)->where(array(&#39;id&#39;=>$userinfo[&#39;id&#39;]))->save($updateData);

추천 학습: "PHP Video Tutorial"

위 내용은 PHP에서 매일 포인트에 포인트를 추가하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.