To matt:
This function accepts a paremeter, which does not imply you using hardcoded stuff, instead you can let the user choose! \o/
As a part of a framework or something.
Plus, you can probably call this with call_user_func
![]() | settype描述bool settype ( mixed var, string type )将变量 var 的类型设置成 type。 type 的可能值为:
如果成功则返回 TRUE,失败则返回 FALSE。
![]()
ludvig dot ericson gmail.dot com
09-Apr-2006 11:36
To matt:
matt at mattsoft dot net
07-Dec-2005 01:49
using (int) insted of the settype function works out much better for me. I have always used it. I personally don't see where settype would ever come in handy.
Michael Benedict
30-Oct-2005 01:55
note that settype() will initialize an undefined variable. Therefore, if you want to preserve type and value, you should wrap the settype() call in a call to isset().
25-Oct-2005 09:30
James Reiher (IL) writes:
26-Sep-2005 04:24
In response to the comment by Neoja regarding validating every variable in the URL using settype -- that is wrong.
nospamplease at veganismus dot ch
22-Jul-2005 10:38
you must note that this function will not set the type permanently! the next time you set the value of that variable php will change its type as well.
17-May-2005 03:22
I needed to pull a zerofilled integer out of a MySQL table and increment it by a certain amount. Unfortunately, PHP treated this integer as if it were a string when I tried to add an amount to it. For instance:
reinier_deblois at hotmail dot com
14-Mar-2005 01:18
Instead of settype you could use:
James Reiher (IL)
23-Feb-2005 01:50
I had a problem with PHP destroying the value of my integer with leading zeros as follows:
memandeemail at gmail dot com
09-Dec-2004 09:17
/**
24-Nov-2004 05:34
in PHP3 converting a string to any number results in the value becoming 0. To check if a string represents a number try this:
sdibb at myway dot com
07-Sep-2003 01:03
Using settype is not the best way to convert a string into an integer, since it will strip the string wherever the first non-numeric character begins. The function intval($string) does the same thing.
djworld at php dot net
17-Jul-2002 09:02
Usually it won't be necessary to use this function, but some times you need to be sure the variables are of some kind. For example, if you send a number to a database query from a variable passed by GET or POST, you may get sure it's a number by doing SetType ($var, 'integer'); so you can avoid security holes if it isn't a number and you don't need to addslashes() it, or for example, if you need to be sure that a number won't have any decimals after rounding it, you may do the same and as it will be an integer, it won't contain decimals.
r dot schechtel at web dot de
07-Aug-2001 05:59
To: neoja@hotmail.com
neoja at hotmail dot com
18-Feb-2001 10:42
It is always good to validate all the variables that are given in the url and would cause an error if they are of wrong type. For example, if your page is products.php?id=123 then run settype($id, "integer") in the script, before getting the product info from the database. If the user enters a non-numeric value in the url -- either pasting it wrong or intentionally :) -- the $id will be set to zero and database query will have no errors.
slushpupie at hotmail dot com
23-Jul-2000 12:07
in PHP3 converting a string to any number results in the value becoming 0. To check if a string represents a number try this:
support at mastebyte dot de
12-Jul-2000 03:39
Note that settype($string, "integer") will set $string to 0 if $string contains any lettery, but the function call will be TRUE
ns at canada dot com
06-May-2000 07:38
This settype() behaviour seems consistent to me. Quoting two sections from the manual:
tboothby at felfel dot com
11-Apr-2000 10:33
settype() for some reason increases the initial internal counter for the index of an array if you use<br>
jeffg at NOcounterintuitive dot orgSPAM
28-Oct-1999 05:46
It's worth noting that one can neither <I>settype()</i> nor type-cast a variable as a long. The workaround for this seems to be to use <I>pack()</i>.
| ![]() | |