私はこのようなデータを持っており、それをテーブルノーマルと呼んでいます:
z 0 0.01 0.02
--- ------ ------- ------
-3.4 0.0003 0.0003 0.0003
-3.3 0.0005 0.0005 0.0005
-3.2 0.0007 `0.0007` 0.0006
-3.1 0.001 0.0009 0.0009
-3 0.0013 0.0013 0.0013
そして、私はz =の値を持っています-3.21
-3.2
行 =および列 = の z の値を意味します0.01
だから、私は値を取得します=0.0007
コードで PDO を使用して、データベースから任意の値を取得します。
public function SelectTableZ($col, $z){
try{
$query = "SELECT :col as value FROM table_normal WHERE z=:z";
$this->Statement = $this->Connection->prepare($query, array(PDO::ATTR_CURSOR => PDO::CURSOR_FWDONLY));
$this->Statement->bindParam(":col",$col,PDO::PARAM_STR);
$this->Statement->bindParam(":z",$z,PDO::PARAM_STR);
$this->Statement->execute();
$this->Statement->setFetchMode(PDO::FETCH_OBJ);
$result = $this->Statement->fetchAll();
$this->Statement->closeCursor();
if($result){
return $result;
} /*else throw new Exception("Comment not selected!");*/ else return false;
}catch(Exception $e){
echo "Caught Exception: ".$e->getMessage();
return null;
}
}
これは、データベースから取得したい値です:
$value = -3.21;
$Z = number_format($value * 10, 0, '', '') / 10;
$col = substr(floor($value * 100), -1);
if ($col > 0) {
$col /= 100;
}
$SelectTableZ = $session->SelectTableZ($col, $z);
if(!empty($SelectTableZ)){
foreach($SelectTableZ as $data){
echo $data->value;
}
}
この問題の解決策はありますか?
ありがとう。