2012-11-07 3 views
1
에서 숫자 필드 [속성]의 상태 내가 처음에 객체를 생성하고

무엇입니까 gearNumber 및 타이어에 값 지정.는 PHP

내가 차 객체를 가져오고 기어 수를 늘리려고하면 아무 일도 일어나지 않습니다. 객체 생성시 기본값 (0)을 설정하는 것이지만 차 클래스를 편집하기 위해 다시 돌아가고 싶지 않습니다. 어떻게 든 PHP는 즉시 값을 할당합니다 ...

+2

MySQL 테이블 값을 null 대신 기본값 0으로 설정합니다. –

+0

확실히, 내가 이미 그 이상한 일은 아무것도 일어나지 않는다, php (또는 Yii에 의해 야기 된 것)가 숫자 값으로 0을 인식하지 못하는 것 같다. 이전에 객체 필드로 가져온다면, 여기 내 시나리오는 .. 내가 데이터베이스에서 기본적으로 0으로 설정되어 gearNumber ++와 같은 gearNumber를 증가시키고 다시 저장하면 아무 일도 일어나지 않게하려고하는 데이터베이스 {gearNumber, tires}에서 값을 가져 오는 오브젝트 자동차를 가져 왔습니다. 내가 gearNumber + 1을 좋아한다면, 값이 변합니다 .. 지금 내가 잘못하고있는 부분을 얻지 못합니다! thx – Eliethesaiyan

답변

1

실제 코드를 보지 않고도 말하기 어렵지만 DB에서 행을 검색 할 때 빈 문자열 (또는 null 값)이 배치 될 수 있습니다 귀하의 개체의 속성에.

해결 방법은 여러 가지가 있습니다. 어쩌면 당신이 찾고있는 것은 gearNumber와 tires를 매개 변수로 취하는 constructor을 생성하는 것입니다. 그것이 "자동차를 만들고 싶으면 기어 번호와 타이어를 공급해야합니다"라고 말하는 OO 방식입니다.

HTH

+0

$ model-> gearNumber = $ model-> gearnumber ++; $ model-> save(); 아무것도 다시 가져 오지 않으면 아무것도 변하지 않지만, $ model-> gearNumber = $ model-> gearnumber + 1과 같은 일을 할 때; $ model-> save(); 그것은 잘 작동 – Eliethesaiyan

+0

솔직히 나는 그것이 그것을하는 유효한 방법인지 모른다. 어쩌면 당신은'$ model-> gearNumber + = 1'을 찾고 있습니까? [할당 연산자] (http://www.php.net/manual/en/language.operators.assignment.php)를 확인할 수도 있습니다. –

+0

내가 글을 쓰는 동안 당신이 답을 편집 한 것 같습니다. 그렇다면 당신은 자신이 대답을 찾은 것 같아요 :) –