Php 使用不同的数据度量,而不是KB

Php 使用不同的数据度量,而不是KB,php,Php,我目前正在修改一些代码,允许我上传文件到我的网站。我将在配置文件中设置一个选项,允许用户设置最大上载限制。目前,这必须以千字节输入,我想知道是否有可能以MB输入 if ((($_FILES["file"]["type"] == "image/gif") || ($_FILES["file"]["type"] == "image/jpeg") || ($_FILES["file"]["type"] == "image/png") || ($_FILES["file"]["type"] == "im

我目前正在修改一些代码,允许我上传文件到我的网站。我将在配置文件中设置一个选项,允许用户设置最大上载限制。目前,这必须以千字节输入,我想知道是否有可能以MB输入

if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/png")
|| ($_FILES["file"]["type"] == "image/pjpeg"))
**&& ($_FILES["file"]["size"] < 2000000)** <---- Entered in Kilobytes, not MB.
&& in_array($extension, $allowedExts))
if(($_文件[“文件”][“类型”]=“图像/gif”)
||($_文件[“文件”][“类型”]=“图像/jpeg”)
||($_文件[“文件”][“类型”]=“图像/png”)
||($_文件[“文件”][“类型”]=“图像/pjpeg”))
**&&($_FILES[“file”][“size”]<2000000)**只需执行以下操作:

$b = 1000000;
$kb = $b / 1024;
$mb = $kb / 1024;
if($_FILES['size']['size'] < $mb * 2) {
    // do something;
}
$b=1000000;
$kb=$b/1024;
$mb=$kb/1024;
如果($_文件['size']['size']<$mb*2){
//做点什么;
}

最好定义一个将MB转换为字节的函数,即:

function MB($mb) {
   return $mb*1024*1024;
}
然后,您可以进行如下比较:

($_FILES["file"]["size"] < MB(2000))
($_文件[“文件”][“大小”]

这是另一种方法


C.也没有宏,所以不可能像C、C++到<>代码>定义< /C>这些东西。< / P>是的,你要的是可能的。它是在ByTePHP中提供的。

参数,以字节为单位,无论你做什么,你都必须获取配置文件值并将其转换为字节,或者获取php值并将其转换为配置文件使用的任何单位。选择哪种方式取决于你。如果只有预处理器宏。否则,没有。但是,php中没有宏!!另一个用于转换字节到KB!我们需要更多的函数!对于每个数学表达式!哎呀-在他的帖子中,他说KB,我应该加入。编辑。我的意思是,创建一个函数来封装
*1024*1024
数学太过了。
函数为空($null=null){返回值为空($null)}
基本上代表了为简单数学创建函数的冗余程度:p
<?php
    define('MB', 1024*1024);
    echo 10*MB;
?>