引自thisSOanswer:Everythingsubmittedisinitiallytreatedlikeastring,soforcingknown-numericdataintobeinganintegerorfloatmakessanitizationfastandpainless.这是我独立提出的清理方法,用于快速而肮脏的查询(从数字ID查找表中的名称);插入查询的唯一变量是ID,我知道ID应该大于零且小于255,所以我的清理如下(也加入了一些验证):$id=(int)$_REQUEST['id'];if($id255)errmsg("InvalidIDspecified
我有一个问题。我正在抓取一个txt文件并提取一个ID。问题是数据不一致,我必须评估数据。这是一些代码:$a="34";$b="45";$c="ddd556z";if(){echo"INTEGER";}else{echo"STRING";}我需要测试值$a、$b或$c是否为整数。这样做的最佳方法是什么?我已经测试过“修剪”和使用“is_int”,但没有按预期工作。谁能给我一些线索? 最佳答案 即使您的“int”是字符串$a="number";,下面的示例仍然有效is_numeric()或preg_match('/^-?[0-9]+$/
如何在php中比较两个整数?我试过了print(1>2);//Nooutput$a=1;$b=2;$c=($a>$b)?true:false;print($c);//Nooutputvar_dump工作正常。我安装了最新的PHP。 最佳答案 您的两个比较都返回false,这不会打印出值。 关于php-比较两个整数,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10837271/
我有一个小型财务应用程序,前端是PHP,后端是MySQL。我有古老的偏见,我在MySQL中将货币值存储为整数美分。我的HTML表单允许输入美元值,例如“156.64”,我使用PHP将其转换为美分,然后将美分存储在数据库中。我有一个函数可以从表单中清除美元值,并将其转换为美分。我去除前导文本,去除尾随文本,乘以100并转换为整数。最后一步是$cents=(integer)($dollars*100);这几乎适用于所有情况,除了极少数值,如“156.64”,它始终转换为15663美分。为什么要这样做?如果我这样做:$cents=(integer)($dollars*100+0.5);然后它
作为帮助我学习另一个PHPMVC框架的一个有趣的副项目,我一直在将黑白棋/黑白棋作为PHP和Ajax应用程序编写,主要是简单的东西。出于多种原因,我决定不使用多维数组,而是使用线性数组(在本例中为64个元素长)和一些将坐标转换为整数的方法。所以我很好奇,是否有其他可能更快的算法将整数转换为坐标点?functionint2coord($i){$x=(int)($i/8);$y=$i-($x*8);returnarray($x,$y);}//Notasurprisebutthisis.003MSsloweronaveragefunctionint2coord_2($i){$b=base_c
有谁知道preg_replace是什么字符串只允许整数和逗号?我想去掉所有的空格、字母、符号等,所以剩下的就是数字和逗号,但字符串中没有任何前导或训练逗号。(示例:5、7、12)这是我现在使用的,我认为它只去除逗号前后的空白,但允许其他任何内容。$str=trim(preg_replace('|\\s*(?:'.preg_quote($delimiter).')\\s*|',$delimiter,$str)); 最佳答案 这应该可以满足您的需要:$str=preg_replace(array('/[^\d,]/',//Matches
模数除法只返回整数吗?我需要float返回。请参阅以下内容:var_dump(12%10);//returns2,asexpectedvar_dump(11.5%10);//returns1insteadof1.5? 最佳答案 是的。%运算符返回一个整数。如果您想要浮点结果,请使用fmod()函数代替。 关于php-模数除法返回一个整数?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questio
例如PHP中“000”、“404”、“0523”可以转为整数,而“42sW”、“4232343”则不能转为整数。 最佳答案 使用ctype_digit函数。is_numeric也将允许浮点值。$numArray=array("1.23","156","143","1w");foreach($numArrayas$num){if(ctype_digit($num)){//YourConvertlogic}else{//Donotconvertprinterrormessage}}} 关于p
我知道在php中可以像这样连接两个字符串$a.=$b;等于$a=$a.$b;是否可以用整数做某事?但是用数学运算?我有两个变量:$var1=8;$var2=2;我需要执行$var1-$var2,但我不想创建第三个变量来保存此计算。我会尝试$var1=$var1+$var2这行得通吗?是否有另一种.=类似的方法? 最佳答案 好吧,因为现在大家都很困惑//_Appending_$var2to$var1andassignitto$var1$var1.=$var2;//_Add_$var2to$var1andassigntheresultt
我用谷歌搜索、雅虎搜索和研究,但没有成功。我正在尝试使用PHP比较2个数字。明确地说,我知道我可以使用基础数学来完成这个任务,也许是一个简单的if{}我知道该怎么做,我可以编写一个简单的函数来查找结果,但这不是我的问题。我的问题很简单-是否有PHP函数返回2个整数之间的差值,+ve或-ve以任何顺序呈现为正整数例子PHPFunction(3,-2)result5谢谢 最佳答案 正如@Phylogenesis所指出的,您可以使用abs()功能。例如:$var1=-2;$var2=-30;echoabs($var1-$var2);//2