小编Asn*_*ore的帖子

有效2位十进制数的正则表达式

我想在php中验证价格,可以是100或100.45小数点后2位是可选的.

现在验证应该只允许数字.

到目前为止,我设法实现了它

if (!preg_match('/^[0-9]+(\.[0-9]{1,2})?/', "100"))
{
    echo "Invalid";
}
else
{
    echo "Valid";
}
Run Code Online (Sandbox Code Playgroud)

但这里的问题是即使我输入100a.00或100a或100.a00它也显示有效

请帮我修复它,以便只允许数字,即100或100.00格式

php regex

7
推荐指数
2
解决办法
1万
查看次数

如何根据php中的某些值格式化十进制数

我的价值很少99.00 99.90 99.01

仅供我们使用number_format($ value,2)后,我已经获得了上述3个值

但是现在我想删除小数而不将它们四舍五入,如99.00到99 99.90到99.9 99.01到99.01保持不变

怎么能实现这个?请给我一个方法.

我只需要一个检查以下功能:

  1. 给定数字是否为十进制,即具有"." 小数点后的数字
  2. 最后一位数是否为0,如果是,则删除最后一位数
  3. 小数点后的数字是否都为0,如果是,则删除它们.
  4. 如果它们中的任何一个不是0,那么它们应该保持在那里,就像在99.09的情况下它应该保持完整,如果是99.90它应该是99.9.

等待你的想法.提前致谢.

php decimal number-formatting

6
推荐指数
1
解决办法
80
查看次数

如何使用特定前缀取消设置会话变量

可能重复:
如何取消/销毁除某些特定键以外的所有会话数据?

我有一些以"汽车"开头的会话变量,例如

$_SESSION["cars_registration"];
$_SESSION["cars_make"];
$_SESSION["cars_model"];
$_SESSION["cars_variant"];
.
.
.
$_SESSION["cars_date_created"];
Run Code Online (Sandbox Code Playgroud)

我想知道取消/删除/清空那些以汽车作为前缀的会话变量的代码,如上所述.

到目前为止,我已经实现了这一点,但对于解开它们的代码并不知道.

foreach($_SESSION as $key => $value)
{
    if (strpos($key, 'cars_') === 0)
    {
      // Need to delete / unset the session variables  
    }
}
Run Code Online (Sandbox Code Playgroud)

请帮帮我

php session-variables

0
推荐指数
1
解决办法
1584
查看次数