你知道Yii2中是否有任何扩展,教程或某些方法来正确地进行英寸和毫米(英制和公制)之间的转换? 我想在公制测量中保存数据库的值,并以英制显示值。
提前致谢。
答案 0 :(得分:1)
您可以使用模型中的afterFind()
方法在调用表时转换值,并使用beforeSave()
方法转换为公制系统来存储数据。
您可以在模型中尝试这样的事情:
public function afterFind()
{
parent::afterFind();
$this->data = $this->data * 0.0393701;
}
public function beforeSave()
{
parent::beforeSave();
$this->data = $this->data * 25.4;
}
您还可以使用相同的机制在模型中实现@ D.R的答案
答案 1 :(得分:1)
您也可以使用此库转换任何单位。
https://packagist.org/packages/php-units-of-measure/php-units-of-measure
示例:
use PhpUnitsOfMeasure\PhysicalQuantity\Length;
$l = new Length($val, 'inches');
echo $l->toUnit('mm');
答案 2 :(得分:0)
如果我理解正确,你可以简单地使用这些功能。
function mmToIn ($val) {
return $val * 0.0393701
}
function inToMm ($val) {
return $val * 25.4
}