[REDIS] 사용 Predis, 어떻게 SET (즉, 저장) 다차원 연관 배열?
REDIS사용 Predis, 어떻게 SET (즉, 저장) 다차원 연관 배열?
나는이 가이드는 PHP에서 Predis를 시작하려면 다음을하고있다. 이 가이드 이들은 키 값 쌍을 저장하는 집합 () 함수를 주었다 :
이제 데이터는 내가 MongoDB를 데이터베이스에서 오는 다차원 연관 배열을 predis이다 사용하여 캐시하려면, 그것은처럼 보인다
allRowsDataArray = array(
row0 = array(
key0 = value0,
key1 = value1,
...so on
),
row1 = array(
field0 = value0,
field1 = value1,
...so on
),
...so on
)
그래서 내가 할 캐시에이 배열을 저장하기 위해,에
$redis->set('allRowsDataArray', $allRowsDataArray);
나는이 예외 / 오류가 발생합니다 :
Warning: strlen() expects parameter 1 to be string, array given in /var/www/html/testProject/plugins/predis/predis/src/Connection/StreamConnection.php on line 390
Notice: Array to string conversion in /var/www/html/testProject/plugins/predis/predis/src/Connection/StreamConnection.php on line 391
Fatal error: Uncaught Predis\Response\ServerException: ERR Protocol error: invalid bulk length in /var/www/html/testProject/plugins/predis/predis/src/Client.php:370 Stack trace: #0 /var/www/html/testProject/plugins/predis/predis/src/Client.php(335): Predis\Client->onErrorResponse(Object(Predis\Command\StringSet), Object(Predis\Response\Error)) #1 /var/www/html/testProject/plugins/predis/predis/src/Client.php(314): Predis\Client->executeCommand(Object(Predis\Command\StringSet)) #2 /var/www/html/testProject/plugins/predis/index.php(110): Predis\Client->__call('set', Array) #3 {main} thrown in /var/www/html/testProject/plugins/predis/predis/src/Client.php on line 370
그래서 질문은 내가 놓친 게 무엇인가? 이 문제를 어떻게 해결해야합니까?
해결법
-
==============================
1.값으로 기대할 설정 방법은 문자열이어야합니다. 사용로 json_encode ()는 데이터를 저장합니다.
값으로 기대할 설정 방법은 문자열이어야합니다. 사용로 json_encode ()는 데이터를 저장합니다.
$redis->set('allRowsDataArray', json_encode($allRowsDataArray));
그리고 사용 json_decode ()는 레디 스에서 검색 할 수 있습니다.
from https://stackoverflow.com/questions/48405461/using-predis-how-to-set-i-e-store-a-multidimensional-associative-array by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] 어떻게 얻을 C #에서 레디 스 데이터베이스에서 모든 키와 값을 업데이트하는? (0) | 2020.01.10 |
---|---|
[REDIS] 파이썬 메모리 대 레디 스로부터 검색 벤치마킹 (사용 timeit) (0) | 2020.01.10 |
[REDIS] 어 그리 게이터 + 레디 스를 사용하여 교착 상태 (0) | 2020.01.09 |
[REDIS] Laravel 6 설정 () -> GET ( 'database.connections.mysql')는 DB와 일치하지 않는 : 연결 () (0) | 2020.01.09 |
[REDIS] 다중 노드 인스턴스에서 공유 IO 객체 (0) | 2020.01.09 |