使用$wpdb->;时应该使用什么类型的格式;插入替身


What type of format should I use when using $wpdb->insert on a double?

我将在我的DB中存储3条信息:post_id、trans_id和trans_amount(money)。trans_id的一个例子看起来像9q5fcs,所以我认为应该使用%s作为字符串。如何让$wpdb对象将trans_amount存储为double?

post_id只是在使用相同的insert函数时返回的post id。在此之前,我正在另一个代码块中使用它。但是,当我将其格式设置为插入%d时,它不会插入到DB中。DB字段设置为int(11)。

代码

global $wpdb;
        $wpdb->insert( $wpdb->prefix . 'fd_transactions', array( 'trans_amount' => $amount), '%s');
        $wpdb->insert( $wpdb->prefix . 'fd_transactions', array( 'post_id' => $_SESSION['fd_post_id']), '%d');
        $wpdb->insert( $wpdb->prefix . 'fd_transactions', array( 'trans_id' => $trans_id), '%s');
% - a literal percent character. No argument is required.
b - the argument is treated as an integer, and presented as a binary number.
c - the argument is treated as an integer, and presented as the character with that ASCII value.
d - the argument is treated as an integer, and presented as a (signed) decimal number.
e - the argument is treated as scientific notation (e.g. 1.2e+2). The precision specifier stands for the number of digits after the decimal point since PHP 5.2.1. In earlier versions, it was taken as number of significant digits (one less).
E - like %e but uses uppercase letter (e.g. 1.2E+2).
f - the argument is treated as a float, and presented as a floating-point number (locale aware).
F - the argument is treated as a float, and presented as a floating-point number (non-locale aware). Available since PHP 4.3.10 and PHP 5.0.3.
g - shorter of %e and %f.
G - shorter of %E and %f.
o - the argument is treated as an integer, and presented as an octal number.
s - the argument is treated as and presented as a string.
u - the argument is treated as an integer, and presented as an unsigned decimal number.
x - the argument is treated as an integer and presented as a hexadecimal number (with lowercase letters).
X - the argument is treated as an integer and presented as a hexadecimal number (with uppercase letters).

string  s
integer     d, u, c, o, x, X, b
double  g, G, e, E, f, F

如果不传递数据类型会发生什么

it takes data type as a string 

For Double 
you can use g, G, e, E, f, F any of these according to your value