[REDIS] Laravel 4 : 정의되지 않은 메서드 레디 스에 전화 : 연결 ()
REDISLaravel 4 : 정의되지 않은 메서드 레디 스에 전화 : 연결 ()
나는이 오류에 대한 미친거야. 내가 Puphpet 생성 데비안 7 방랑 VM을 가지고, 설치는 잘했다.
레디 스 서버가 실행 중입니다 :
나는 127.0.0.1:6379에 서버를 사용할 수 있습니다 :
PHP5 - 레디 스 실제로 설치됩니다
다음은 응용 프로그램 / 지역 / database.php에서 파일을 config (설정) 내 레디 스입니다 :
'redis' => [
'cluster' => false,
'default' => [
'host' => '127.0.0.1',
'port' => 6379,
'database' => 0,
],
],
// Get redis
$redis = Redis::connection();
sudo service nginx reload
sudo service redis-server force-reload
composer dumpautoload
그러나 아무것도 오류를 해결합니다.
난 아직도 데 :
ERROR: exception 'Symfony\Component\Debug\Exception\FatalErrorException' with message 'Call to undefined method Redis::connection()' in /var/www/fd/app/menus/admin.menu.php:16
(16 라인은 내가 연결 $ 레디 스 = 레디 스 :: 연결 () 할 경우)
어디에서 잘못입니까?
BTW, 나는> 월요일을 싫어.>
해결법
-
==============================
1.나는이 문제가 발생한 후이 건너 온과 다른 사람을 도움이 경우에 다른 대답을 추가하고 싶었다.
나는이 문제가 발생한 후이 건너 온과 다른 사람을 도움이 경우에 다른 대답을 추가하고 싶었다.
내 PHP 구성 / 확장이 활성화 된 PHP - 레디 스 모듈을 가지고 있기 때문에 내 경우에는 별칭 충돌이 있었다 - PHP 모듈과 Laravel 모두 레디 스라는 이름의 충돌 객체를 갖고있는 것 같다. 나는 단순히 전체 네임 스페이스 식별자를 사용하여이 문제를 해결할 수 있었다 :
//$r = Redis::connection() $r = Illuminate\Support\Facades\Redis::connection();
-
==============================
2.문제는 당신의 레디 스 서버 설치를하지 않습니다 - 뭔가 잘못 구성된 또는 시스템에 변화가있다.
문제는 당신의 레디 스 서버 설치를하지 않습니다 - 뭔가 잘못 구성된 또는 시스템에 변화가있다.
당신이보고있는 오류
Call to undefined method Redis::connection()
PHP이 알려주는 클래스 레디 스에 연결이라는 방법을 찾을 수 없습니다. 그것은 PHP 오류, 그리고 PHP는 결코 레디 스 서버에 얘기하려고 주위에 얻을 수 없습니다.
일반적으로, Laravel 4.2 시스템에서 레디 스라는 이름의 클래스가 없습니다. 대신, 별명은 응용 프로그램 / 설정 / app.php의 설정입니다
#File: app/config/app.php 'Redis' => 'Illuminate\Support\Facades\Redis',
이는 외관으로 레디 스를 켭니다. 이것은 당신이 레디 스 같은 통화 : 연결을 할 수 있습니다 것입니다.
따라서, 귀하의 시스템에 뭔가 잘못이있다. 당신이 어느
PHP는 레디 스 클래스, 시도가라고 생각 곳을 찾으려면
$r = new ReflectionClass('Redis'); var_dump($r->getClassFile());
# 4이 문제가 있는지 확인하려면 직접 서비스를 호출 시도
$app = app(); $app['redis']->connection();
행운을 빕니다!
-
==============================
3.설치 및 PHP5 - 레디 스, 그것은 클래스 레디 스로 된 모듈을 활성화 한 때문 오류입니다. Laravel 레디 스 외관을 그 오류를 방지하고 사용하려면 응용 프로그램의 별칭을 변경해야 / 설정 / app.php (또는 환경입니다 무엇이든).
설치 및 PHP5 - 레디 스, 그것은 클래스 레디 스로 된 모듈을 활성화 한 때문 오류입니다. Laravel 레디 스 외관을 그 오류를 방지하고 사용하려면 응용 프로그램의 별칭을 변경해야 / 설정 / app.php (또는 환경입니다 무엇이든).
'레디 스'=> '를 분명히 \ 지원 \ 외관 \ 레디 스'
'RedisFacade'=> '를 분명히 \ 지원 \ 외관 \ 레디 스'// 당신이 무엇을 좋아
아니면 그냥 레디 스를 사용 만 캐시 클래스를 사용하도록 cache.php를 구성합니다. :)
-
==============================
4.PC에서 레디 스 확장을 설치합니다.
PC에서 레디 스 확장을 설치합니다.
다음 링크에서 올바른 버전 DDL 다운로드 : https://pecl.php.net/package/redis/4.1.0/windows
올바른 폴더에 DLL을 넣어
Wamp -> C:\wamp\bin\php\php-XXXX\ext Laragon -> C:\laragon\bin\php\php-XXX\ext
편집 php.ini 파일이 추가
extension=php_redis.dll
다시 서버 점검은 phpinfo (); 이제 레디 스가 있어야한다!
from https://stackoverflow.com/questions/25975794/laravel-4-call-to-undefined-method-redisconnection by cc-by-sa and MIT license
'REDIS' 카테고리의 다른 글
[REDIS] 레디 스는 - 여러 키의 값을 취득합니다 (0) | 2020.01.14 |
---|---|
[REDIS] 레디 스에서 시계열 기억 (0) | 2020.01.14 |
[REDIS] 어떻게 루비에서 MULTI 블록 내부 레디 스에서 읽을 수 있습니까? (0) | 2020.01.14 |
[REDIS] 레디 스 / Jedis - 패턴에 의해 삭제 하시겠습니까? (0) | 2020.01.14 |
[REDIS] 레디 스 목록에 값으로 항목의 인덱스를 가져옵니다 (0) | 2020.01.14 |