ホームページ >バックエンド開発 >PHPチュートリアル >ThinkPHP は、データベースからクエリされたデータを対応する型に変換します。
デフォルトでは、Thinkphp でクエリされるすべてのフィールド値の型は String です。Web を開発している場合は、もちろん問題ありませんが、インターフェイスの開発は非常に面倒です。エンドツーエンドタイプ。
ThinkPHP の Model.class.php は、クエリ後に型変換を実行できる _parseType メソッドを提供します。ただし、フレームワークはこれを行わないため、手動で調整する必要があります。
モデルの基本クラスを作成します:
BaseModel.class.php。関連クエリを使用するため、RelationModel から継承します
use Think\Model;use Think\Model\RelationModel;class BaseModel extends RelationModel{ //在查询后,转换数据类型 protected function _after_select(&$resultSet, $options) { parent::_after_select($resultSet,$options); foreach ($resultSet as &$result) { $this->_after_find($result, $options); } } protected function _after_find(&$result, $options) { parent::_after_find($result,$options); foreach ($result as $field => $value) { $this->_parseType($result, $field); } }}
すべての Model クラスは BaseModel から継承します。
もともとこれは行われていましたが、Model.class.php の _parseType メソッドに低レベルのバグが見つかりました。
© 2016, Frozen Fish. アプリケーション開発ノートをコピーおよび転載する場合は、作者の努力の成果を尊重し、このサイトへのリンクを保持してください。