Получить значение из memcach, но это ноль - PullRequest
0 голосов
/ 18 сентября 2018

Я пытаюсь получить значение из memcache.
значение $ dataOld [$ i] равно нулю, когда я пытаюсь прочитать это в операторе if вне блока if, оно содержит правильное значение.Это мой кодМой код для получения и отправки данных.любая помощь будет высоко ценится.

<?php
/**
* Created by PhpStorm.
* User: PC1
* Date: 9/18/2018
* Time: 11:57 AM
*/
include 'config.php';
include 'BefrestAuth.php';
include 'Publisher.php';
$memcahe = new Memcache();
$memcahe->connect("localhost", 11211);
$dataNew = json_decode($memcahe->get('keyNew'));
$memcahe->set('keyOld', json_encode($dataNew));
while (true) {
    $dataNew = json_decode($memcahe->get('keyNew'));
    $dataOld = json_decode($memcahe->get('keyOld'));

    if (!$dataNew[0]->price) {
        continue;
    } else {
        $str = "";
        $taskolu = array();
        for ($i = 0; $i < count($dataNew); $i++) {
            if ((int)$dataNew[$i]->price > (int)$dataOld[$i]->price) {
                echo "\n".$dataNew[$i]->price."/////".json_encode($dataOld[$i])."\n";
                $str .= "name:" . $dataNew[$i]->name . " type:" . $dataNew[$i]->type . " price:" . $dataNew[$i]->price."\n";
                array_push($taskolu, $dataNew[$i]);
            }
            if ((int)$dataOld->price > (int)$dataNew[$i]->price) {

                $str .= "name:" . $dataNew[$i]->name . " type:" . $dataNew[$i]->type . " price:" . $dataNew[$i]->price."\n";
                array_push($taskolu, $dataNew[$i]);
            }
        }
        if (!empty($str)) {
            $dbca = connection();
            $dbca->set_charset("utf8");
            $rate = "SELECT u.user_chid FROM users u";
            $result = $dbca->prepare($rate);
            $result->execute();
            $res = $result->get_result();
            while ($obj = $res->fetch_object()) {
                $auth = (string)BefrestAuth::generatePublishAuth($obj->user_chid);
                Publisher::publish(11812, $obj->user_chid, $auth, json_encode(array("messages" => $taskolu)));
                echo "\n";
            }
        }
        $memcahe->delete('keyOld');
        $data=json_encode($dataNew);
        $memcahe->set('keyOld', $data);
        $dataOld = json_decode($memcahe->get('keyOld'));

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...