Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
是否可以在php中检索数据库值作为数据库中定义的类型而不是字符串类型?_Php_Database_Casting_Sqldatatypes - Fatal编程技术网

是否可以在php中检索数据库值作为数据库中定义的类型而不是字符串类型?

是否可以在php中检索数据库值作为数据库中定义的类型而不是字符串类型?,php,database,casting,sqldatatypes,Php,Database,Casting,Sqldatatypes,如果我在mysql数据库中将一列定义为int类型,那么我的查询总是以string类型返回值 有没有办法检索正确的类型?您可以使用mysql\u field\u type()函数来发现字段的类型,然后将值强制转换为适当的类型 第一个参数是查询变量,第二个参数是查询中的列索引 例: 您可以使用mysql_field_type()函数来发现字段的类型,然后将值强制转换为适当的类型 第一个参数是查询变量,第二个参数是查询中的列索引 例: 我很确定PHP通常会自动转换它们 $val = $the_stri

如果我在mysql数据库中将一列定义为int类型,那么我的查询总是以string类型返回值


有没有办法检索正确的类型?

您可以使用mysql\u field\u type()函数来发现字段的类型,然后将值强制转换为适当的类型

第一个参数是查询变量,第二个参数是查询中的列索引

例:


您可以使用mysql_field_type()函数来发现字段的类型,然后将值强制转换为适当的类型

第一个参数是查询变量,第二个参数是查询中的列索引

例:


我很确定PHP通常会自动转换它们

$val = $the_string_from_database;
$val *= 2;
echo $val;

我很确定PHP通常会自动转换它们

$val = $the_string_from_database;
$val *= 2;
echo $val;

当使用标准函数将数据从mySQL返回到PHP时,数据类型总是转换为字符串。您始终可以使用以下方法将其转换回:

$int = (int) $sql_row['integer_cell'];
您还可以使用
intval()
将类型转换回来

$int = intval($sql_row['integer_cell'];

这部分是由于PHP的松散类型转换。

当使用标准函数将数据从mySQL返回到PHP时,数据类型总是转换为字符串。您始终可以使用以下方法将其转换回:

$int = (int) $sql_row['integer_cell'];
您还可以使用
intval()
将类型转换回来

$int = intval($sql_row['integer_cell'];
这部分是由于PHP松散的类型转换。

是的,使用和可以检索类型为(int)的整数

e、 g

在我的机器上。如您所见,
id
作为整数返回。

是,使用和,您可以将整数作为类型(int)检索

e、 g



在我的机器上。正如你所看到的,
id
是作为一个整数返回的。

你的意思是当你在PHP中
gettype($var)
它返回:string“{int}”length=x?@DavidBarker顺便说一句,你应该使用它。你的意思是当你在PHP中
gettype($var)
它返回:string“{int}”length=x?@DavidBarker,你更应该使用.OP awants来知道如何检索正确的类型,而不是如何强制转换类型。是的,我知道php会转换类型,一旦我对它做了一些事情,我想知道我是否可以将值检索为正确的类型,而不必再进行类型转换。OP awants知道如何检索正确的类型,不是如何转换类型。是的,我知道php会转换类型,一旦我对它做了一些事情,我想知道我是否可以在不进行类型转换的情况下将值重新转换为正确的类型。我想OP知道如何获得类型。他希望在从数据库检索数据时设置类型,而不是之后。我认为OP知道如何获取类型。他希望在从数据库检索数据时设置类型,而不是在检索之后设置类型。不过,这并不是OP的意思。在您的数组“$sql_row”中,数据已经被检索到了。没错,我说过,使用标准PHP函数,您将始终返回一个字符串,回答这个问题。我添加了一些额外的细节来帮助解决一个相对知名的问题。只有OP的问题得到了回答,这个问题才会得到解决。由于他询问是否可以按照数据库中定义的类型检索数据库值,因此您的回答是错误的。您在检索类型后强制转换该类型。不过,这不是OP的意思。在您的数组“$sql_row”中,数据已经被检索到了。没错,我说过,使用标准PHP函数,您将始终返回一个字符串,回答这个问题。我添加了一些额外的细节来帮助解决一个相对知名的问题。只有OP的问题得到了回答,这个问题才会得到解决。由于他询问是否可以按照数据库中定义的类型检索数据库值,因此您的回答是错误的。您在检索到该类型后进行了转换。谢谢,这正是我要查找的+谢谢,这正是我想要的+1.