首页 > 编程技术 > php

限制上传的文件大小

发布时间:2016-11-25 15:56

//$limit_size为限制最大文件大小
$limit_size=50000;
$file_size=$HTTP_POST_FILES['ufile']['size'];
if($file_size >= $limit_size) {
echo "你的文件超过的限制的大小<BR>";
echo "你的文件大小为= ".$file_size;
echo " K";
echo "<BR>文件大小限制为= 50000 k";
}
else {
// 上传到什么目录,也就是从临时目录拷贝到目标目录
if(copy($HTTP_POST_FILES['ufile']['tmp_name'], $path))
{
echo "上传成功<BR/>";
echo "<img" width=100% src="$path" width="150" height="150">";
}

 

通过侦测脚本的内存使用情况,有利于代码的优化。PHP 提供了一个垃圾收集器和一个非常复杂的内存管理器。脚本执行时所使用的内存量,有升有跌。为了得到当前的内存使用情况,我们可以使用 memory_get_usage() 函数。如果需要获得任意时间点的最高内存使用量,则可以使用 memory_limit() 函数。view sourceprint?01 echo "Initial:

 代码如下 复制代码

".memory_get_usage()." bytes "; 

02 /* prints 

03 Initial: 361400 bytes 

04 */

05   

06 // let's use up some memory 

07 for ($i = 0; $i < 100000; $i++) { 

08  $array []= md5($i); 

09 } 

10   

11 // let's remove half of the array 

12 for ($i = 0; $i < 100000; $i++) { 

13  unset($array[$i]); 

14 } 

15   

16 echo "Final: ".memory_get_usage()." bytes "; 

17 /* prints 

18 Final: 885912 bytes 

19 */

20   

21 echo "Peak: ".memory_get_peak_usage()." bytes "; 

22 /* prints 

23 Peak: 13687072 bytes 

 代码如下 复制代码
  <form action="?action=doing" method="post">
  <input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="1"/>
  <input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="2"/>
  <input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="3"/>
  <input name="ID_Dele[]" type="checkbox" id="ID_Dele[]" value="4"/>
  <input type="submit"/>
  </form>

php处理文件

 

 代码如下 复制代码
  $ID_Dele= implode(",",$_POST['ID_Dele']);
  $SQL="delete from `doing` where id in ($ID_Dele)";
一般的记事本都是ansi格式哦,我们把它转换uft-8就必须输出时用\\\\\\\\xEF\\\\\\\\xBB\\\\\\\\xBF特。
 代码如下 复制代码
<?php
$f=fopen("test.txt", "wb");
$text=utf8_encode("a!");
//先用函数utf8_encode将所需写入的数据变成UTF编码格式。
$text="\xEF\xBB\xBF".$text;
//"\xEF\xBB\xBF",这串字符不可缺少,生成的文件将成为UTF-8格式,否则依然是ANSI格式。
fputs($f, $text);
//写入。
fclose($f);
?>

 

 //经过复杂的判断与算是的获取IP地址函数
 function getIP() {
        if (getenv('HTTP_CLIENT_IP')) {
                        $ip = getenv('HTTP_CLIENT_IP');
                }
                elseif (getenv('HTTP_X_FORWARDED_FOR')) {
                        $ip = getenv('HTTP_X_FORWARDED_FOR');
                }
                elseif (getenv('HTTP_X_FORWARDED')) {
                        $ip = getenv('HTTP_X_FORWARDED');
                }
                elseif (getenv('HTTP_FORWARDED_FOR')) {
                        $ip = getenv('HTTP_FORWARDED_FOR');

 

                }
                elseif (getenv('HTTP_FORWARDED')) {
                        $ip = getenv('HTTP_FORWARDED');
                }
                else {

                        $ip = $_SERVER['REMOTE_ADDR'];
                }
                return $ip;
 //最简单获取ip地址代码一句实例
 
 $reIP=$_SERVER["REMOTE_ADDR"];
 echo $reIP;
 
 //
 
 //php教程获取ip的算法
  if(getenv('HTTP_CLIENT_IP')) {
  $onlineip = getenv('HTTP_CLIENT_IP');
  } elseif(getenv('HTTP_X_FORWARDED_FOR')) {
  $onlineip = getenv('HTTP_X_FORWARDED_FOR');
  } elseif(getenv('REMOTE_ADDR')) {
  $onlineip = getenv('REMOTE_ADDR');
  } else {
  $onlineip = $HTTP_SERVER_VARS['REMOTE_ADDR'];
  }
  echo $onlineip;

  //可以分出内网与外网站ip地址获取程序
 
 function getip_out(){
 $ip=false;
 if(!empty($_SERVER["HTTP_CLIENT_IP"])){
  $ip = $_SERVER["HTTP_CLIENT_IP"];
 }
 if (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
  $ips教程 = explode (", ", $_SERVER['HTTP_X_FORWARDED_FOR']);
  if ($ip) { array_unshift($ips, $ip); $ip = FALSE; }
  for ($i = 0; $i < count($ips); $i++) {
   if (!eregi ("^(10│172.16│192.168).", $ips[$i])) {
    $ip = $ips[$i];
    break;
   }
  }
 }
 return ($ip ? $ip : $_SERVER['REMOTE_ADDR']);
 }
 
 echo getip_out();
 
 //php获取ip的算法,用了?号表达式来处理 
 
  $user_IP = ($_SERVER["HTTP_VIA"]) ? $_SERVER["HTTP_X_FORWARDED_FOR"] : $_SERVER["REMOTE_ADDR"];
  $user_IP = ($user_IP) ? $user_IP : $_SERVER["REMOTE_ADDR"]; 
  

标签:[!--infotagslink--]

您可能感兴趣的文章: