$where = array('idx', '='. '1');
===>
. 대신에 , 로 바꾸세용
$where = array('idx', '=', '1');
or
$where = array('idx', '1');
아 저게 오타인데요,
$where = array('idx', '=', '1');
이게 맞습니다.
말씀해주신 두개 방법 다 해봤는데도
Undefined offset: 0 이 에러가 나네요
DB::table("test")->where('idx',1)->get();
이렇게 해보시구요
table shema 올려봐주세요
DB::table("test")→where('idx', 1)→get();
이건 잘 됩니다만... 변수를 넣으면 안되네요
table 스키마는 아래와 같습니다.
CREATE TABLE test (
idx integer primary key,
text varchar(255),
date date);
$where = [
['idx', '=', '1']
]; $query = DB::table("test")->where($where)->get();
https://laravel.com/docs/5.3/queries#where-clauses
네 저도 전에 보고 array() 로 한거였는데
조금 생각해보니깐 array()안에 array() 하나 더 넣어야 할 것 같아서
지금 해보니 해결했습니다.
array(array('idx', '=', '1')) 로 변경하고 해보니 잘 되네요.
도움주셔서 감사합니다!
메서드 프로토타입을 다시 한번 확인해 주세요.
정식 용법은 2차원 array가 아니라, where('column', 'operator', 'value'); 입니다.
https://laravel.com/api/5.3/Illuminate/Database/Eloquent/Builder.html#method_where
$where = [
['idx', '=', '1']
];
이 개념자체가 2차원 배열 아닌가요...?
안녕하세요. 한 가지 더 여쭤보고 싶은 것이 있습니다.
이렇게 코드를 실행시키니 오류가 나더라구요.
where 변수에 조건을 넣어서 다양하게 상황에 따라 사용하고 싶은데
어떻게 해야 할지 감이 안잡힙니다.
도움 주시면 감사하겠습니다.