0
私はこれに執着しました..私はstring1 &文字列2(同じモデルで)、string1は7桁とstring2の2桁を持っているとしましょう。 それから私はそれらを一緒に一致させたいと思います。ここで、string1の開始桁の2つはstring2と同じでなければなりません。ルールでは、私はこのコードを配置しながら、私はそのコードを作った後、私は>>モデルにYiiの文字列はどのように一致させることができますか?
<?php
array('string1','cekdigit','message'=>'the code is unmatched','subject'),
?>
を
public function CekDigit($attribute,$params)
{
$attribute=substr($this->string1,0,-7);
$params=$this->string2;
if($this->$attribute==$params['subject'])
{
$this->addError(‘Error’, $params['message']);
return false;
}
}
をこのコードを試してみました、私は23xxxxxxx で$ string1のを埋めるために試みたが、私が得ましたエラー:CException:プロパティmodel.23が定義されていません。誰か助けてくれますか?おかげでたくさんの
あなたはCekDigit()内の$ _POSTを印刷して、結果をコピー&ペーストすることができます試してみてください。 – rajmohan
私はあなたが何が起こっているのか分かっていないと思う...これを完全に読んでください - http://www.yiiframework.com/wiki/168/create-your-own-validation-rule/ –
はあなたの 'ある段階で '$ string1'を' $$ string1'と呼びます。また、 '$ params'を文字列(' $ params = $ this-> string2')に設定しているようですが、次に配列の値と比較しようとしています( '$ params ['subject']' ) – Avanche