如何判断字符串中值的类型并将其转换成对应变量类型

来源:互联网 发布:网络舆情管理工作总结 编辑:程序博客网 时间:2024/05/17 01:19
如何判断字符串中值的类型并将其转换成对应变量类型。
比如有个变量$a = array('12.1','10','string');要将其变成array(12.1,10,'string'); 该怎么做?
我用eval函数做了下,会出现警告,虽然可以用@抑制住,终究不是什么好办法,难道要用正则?

我转类型是用来将数据插入到数据库里的。数据库有什么办法做这方面转换不(我数据库知识很烂)?
各位高手支点高招吧。
下面是我用eval函数做的的代码 :
$a = array("12.1","10","sting");foreach ($a as $t){eval("\$t = $t;");var_dump($t);echo '<br/>';} 


另一种方法:

/** * 给传入的数据赋予正确的类型   * @param array() &$v * @return array() */function format(&$v) {  if(is_array($v)) {    $v = array_map('format', $v);  }  if(is_numeric($v)) $v += 0;  return $v;}$a = array("12.1","10","sting");var_dump($a);format($a);var_dump($a);执行前array(3) {  [0]=>  string(4) "12.1"  [1]=>  string(2) "10"  [2]=>  string(5) "sting"}执行后array(3) {  [0]=>  float(12.1)  [1]=>  int(10)  [2]=>  string(5) "sting"}


原创粉丝点击