PHP htmlspecialchars 函数

 更新时间:2016年11月25日 16:01  点击:1692

PHP htmlspecialchars 函数

定义和用法
addslashes() 函数在指定的预定义字符前添加反斜杠。

些字符有特殊意义的HTML,并应在HTML实体的代表,如果他们要保持它们的含义。这个函数返回一个与这些转换的一些字符串的;的译本,是那些最有用的日常网络编程。如果您需要的所有HTML字符实体进行翻译,使用ヶ辆()代替。

此功能有助于防止用户提供从含有诸如在留言板或来宾簿应用HTML标记,文本。

在翻译过程为:

'&'(符号)变成'&'
'“'(双引号)变成'”'时ENT_NOQUOTES未设置。
'''(单引号)成为'''只有当ENT_QUOTES设置。
'<“(小于)变成”<'
'>“(大于)变成'>”

 

字符串
该字符串被转换。

quote_style
可选的第二个参数,quote_style,告诉函数如何处理单,双引号。默认的模式,ENT_COMPAT,是向后兼容的模式,只有99.64双引号字符和叶单引号翻译。如果ENT_QUOTES设置单一和双引号翻译,如果ENT_NOQUOTES既不是单一的,也不设置双引号的翻译。

字符集
定义中使用的字符集的转换。默认字符集是ISO - 8859 - 1。

对于这个功能的目的,标准字符集- 8859 - 1问题,ISO - 8859 - 15,UTF - 8的,cp866,cp1251,cp1252,并KOI8 - R的有效等价,如用htmlspecialchars影响的字符()占用相同这些职位的所有字符集。

以下字符集的支持在PHP 4.3.0及更高版本。

支持的字符集编码别名描述
标准- 8859 - 1 ISO8859 - 1西欧,拉美- 1
标准- 8859 - 15 ISO8859 - 15西欧,拉美9。增加了欧元符号,法国和芬兰在拉丁美洲的信失踪1字符(ISO - 8859 - 1)。
UTF - 8的ASCII兼容多字节8位Unicode。
cp866 ibm866,866 DOS的具体西里尔字符集。这字符集支持4.3.2。
cp1251的Windows - 1251,共赢1251,1251 Windows的具体西里尔字符集。这字符集支持4.3.2。
cp1252的Windows - 1252,1252的Windows西欧特定字符集。
KOI8 - R的koi8茹,koi8r俄罗斯。这字符集支持4.3.2。
繁体版950繁体中文,主要用于台湾。
简体版936简体中文,国家标准字符集。
繁体版,繁体中文字符集的扩展与香港,繁体中文。
Shift_JIS 8859,932日语
EUC - JP的EUCJP日本


注:任何其他字符集无法识别和ISO - 8859 - 1将用来代替。


double_encode
当double_encode关闭PHP将不存在的HTML实体编码打开,默认是把一切。


<?php
$new = htmlspecialchars("<a href='test'>Test</a>", ENT_QUOTES);
echo $new; // &lt;a href=&#039;test&#039;&gt;Test&lt;/a&gt;

参考实例

<?php

function get_page($url)
{
  $curl = curl_init();
  curl_setopt($curl, CURLOPT_URL, $url);
  curl_setopt($curl, CURLOPT_USERAGENT, 'some bot');
  curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
  curl_setopt($curl, CURLOPT_REFERER, '-');
  curl_setopt($curl, CURLOPT_ENCODING, 'gzip,deflate');
  curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
...
    curl_setopt($curl, CURLOPT_HEADER, 1);
    curl_setopt($curl, CURLOPT_NOBODY, 0);
  curl_setopt($curl, CURLOPT_TIMEOUT, 10);
  $html = curl_exec($curl);
  curl_close($curl);

  return $html;
}

$text = get_page($url);
$new = htmlspecialchars($text, ENT_QUOTES); // here is the magic :)

    echo '<pre>' .$new. '</pre>';


?>

 

php addslashes

描述
字串相当于自动(字符串$海峡)
返回之前需要在数据库查询等,这些字符是单引号('),双引号引用的字符串反斜杠字符(“),反斜杠()和NUL(空字节)。

定义和用法
addslashes() 函数在指定的预定义字符前添加反斜杠。

这些预定义字符是:

单引号 (')
双引号 (")
反斜杠 ()
NULL
语法

例如一个相当于自动使用()是当您将数据输入数据库。例如,要插入到数据库中的名称赖利,您将需要逃脱。它的高度recommeneded使用数据库管理系统的具体转义函数(比如mysqli_real_escape_string()的MySQL或pg_escape_string()对PostgreSQL),但如果你使用的数据库管理系统简化版,有一个逃生的功能,以及数据库管理系统使用逃跑,你的特殊字符可以使用此功能。这只会进入数据库,额外的数据将不会被插入。具有PHP指令magic_quotes_sybase设置的意思是不是转义为'另一个'。

PHP指令magic_quotes_gpc被默认情况下,它本质上运行addslashes()作用于所有的GET,POST和COOKIE数据。不要使用addslashes()对已经被magic_quotes_gpc设置为您就做双逃跑逃脱字符串。函数get_magic_quotes_gpc()可能会派上用场检查这一点。


注释:默认情况下,PHP 指令 magic_quotes_gpc 为 on,对所有的 GET、POST 和 COOKIE 数据自动运行 addslashes()。不要对已经被 magic_quotes_gpc 转义过的字符串使用 addslashes(),因为这样会导致双层转义。遇到这种情况时可以使用函数 get_magic_quotes_gpc() 进行检测。


报告错误参数

海峡
该字符串转义。


报告错误返回值
返回转义字符串。

报告错误的例子

例子1的addslashes()作用的例子

<?php
$str = "Who's John Adams?";
echo $str . " This is not safe in a database query.<br />";
echo addslashes($str) . " This is safe in a database query.";
?>

Who's John Adams? This is not safe in a database query.
Who's John Adams? This is safe in a database query.

下面来一个我使用递归函数。它处理多维数组

<?php
function as_array(&$arr_r)
{
 foreach ($arr_r as &$val) is_array($val) ? as_array($val):$val=addslashes($val);
 unset($val);
}

as_array($_POST);
?>

php explode 实例与教程
array explode ( string separator, string string [, int limit] )

separator 必需。规定在哪里分割字符串。
string 必需。要分割的字符串。
limit 可选。规定所返回的数组元素的最大数目。


每个元素都是 string 的一个子串,它们被字符串 separator 作为边界点分割出来。

如果设置了 limit 参数,则返回的数组包含最多 limit 个元素,而最后那个元素将包

含 string 的剩余部分。

如果 separator 为空字符串(""),explode() 将返回 FALSE。如果 separator 所包

含的值在 string 中找不到,那么 explode() 将返回包含 string 单个元素的数组。

在本例中,我们将把字符串分割为数组:

<?php
$str = "Hello world. It's a beautiful day.";
print_r (explode(" ",$str));
?>

Array
(
[0] => Hello
[1] => world.
[2] => It's
[3] => a
[4] => beautiful
[5] => day.
)
实例二

<?php
//利用 explode 函数分割字符串到数组
$source = "hello1,hello2,hello3,hello4,hello5";//按逗号分离字符串
$hello = explode(',',$source);

for($index=0;$index<count($hello);$index++){
echo $hello[$index];echo "</br>";
}

实例三

<?php
$foo = 'uno dos  tres'; // two spaces between "dos" and "tres"
print_r(explode(' ', $foo));
?>

Array
(
    [0] => uno
    [1] => dos
    [2] =>
    [3] => tres
)
请记住,explode()可以返回,如果分隔立即重复两次(或更多空元素),如以下示

例所示:

PHP implode() 函数实例教程

  1. <?php
  2. /**
  3. * @file class.126http.php
  4. * 获得126邮箱通讯录列表
  5. * @author jvones<jvones@gmail.com> http://www.jvones.com/blog
  6. * @date 2009-09-26
  7. **/
  8.  
  9. class http126
  10. {
  11.  
  12.         private function login($username, $password)
  13.         {               
  14.                 //第一步:初步登陆
  15.                 $cookies = array();
  16.                 $ch = curl_init();
  17.                 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
  18.                
  19.                 curl_setopt($ch, CURLOPT_URL, "https://reg.163.com/logins.jsp?type=1&product=mail126&url=http://entry.mail.126.com/cgi/ntesdoor?hid%3D10010102%26lightweight%3D1%26verifycookie%3D1%26language%3D0%26style%3D-1");
  20.                 curl_setopt($ch, CURLOPT_POST, 1);
  21.                 curl_setopt($ch, CURLOPT_POSTFIELDS, "username=".$username."@126.com&password=".$password);
  22.                
  23.                 curl_setopt($ch, CURLOPT_COOKIEJAR, COOKIEJAR);
  24.                 curl_setopt($ch,CURLOPT_HEADER,1);               
  25.                 curl_setopt($ch, CURLOPT_TIMEOUT, TIMEOUT);
  26.                 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  27.                 $str = curl_exec($ch);        
  28.                 //file_put_contents('./126result.txt', $str);               
  29.                 curl_close($ch);
  30.                         
  31.                 //获取redirect_url跳转地址,可以从126result.txt中查看,通过正则在$str返回流中匹配该地址
  32.                 preg_match("/replace("(.*?)");/", $str, $mtitle);
  33.                 $_url1 = $mtitle[1];
  34.                
  35.                 //file_put_contents('./126resulturl.txt', $redirect_url);        
  36.                 //第二步:再次跳转到到上面$_url1
  37.                 $ch = curl_init($_url1);               
  38.                
  39.                 curl_setopt($ch, CURLOPT_TIMEOUT, TIMEOUT);
  40.                 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  41.                 curl_setopt($ch,CURLOPT_COOKIEFILE,COOKIEJAR);
  42.                 curl_setopt($ch, CURLOPT_COOKIEJAR, COOKIEJAR);               
  43.                 curl_setopt($ch,CURLOPT_HEADER,1);        
  44.                 $str2 = curl_exec($ch);
  45.                 curl_close($ch);
  46.                                                 
  47.                 if (strpos($contents, "安全退出") !== false)
  48.                 {                        
  49.                         return 0;
  50.                 }               
  51.                 return 1;
  52.         }
  53.         
  54.         /**
  55.          * 获取邮箱通讯录-地址
  56.          * @param $user
  57.          * @param $password
  58.          * @param $result
  59.          * @return array
  60.          */
  61.         public function getAddressList($username, $password)
  62.         {               
  63.                 if (!$this->login($username, $password))
  64.                 {
  65.                         return 0;
  66.                 }
  67.             
  68.                 $header = $this->_getheader($username);
  69.                 if (!$header['sid'])
  70.         {
  71.             return 0;
  72.         }
  73.         
  74.         //测试找出sid(很重要)和host
  75.         //file_put_contents('./host.txt', $header['host']);
  76.         //file_put_contents('./sid.txt', $header['sid']);
  77.         
  78.                 //开始进入模拟抓取
  79.                 $ch = curl_init();
  80.                 curl_setopt($ch, CURLOPT_URL, "http://".$header['host']."/a/s?sid=".$header['sid']."&func=global:sequential");
  81.                 curl_setopt($ch, CURLOPT_COOKIEFILE, COOKIEJAR);
  82.                 curl_setopt($ch, CURLOPT_HTTPHEADER, array("Content-Type: application/xml"));
  83.                 $str = "<?xml version="1.0"?><object><array name="items"><object><string name="func">pab:searchContacts</string><object name="var"><array name="order"><object><string name="field">FN</string><boolean name="ignoreCase">true</boolean></object></array></object></object><object><string name="func">user:getSignatures</string></object><object><string name="func">pab:getAllGroups</string></object></array></object>";
  84.                 curl_setopt($ch, CURLOPT_POST, 1);
  85.                 curl_setopt($ch, CURLOPT_POSTFIELDS, $str);
  86.                 curl_setopt($ch, CURLOPT_TIMEOUT, TIMEOUT);
  87.                 ob_start();
  88.                 curl_exec($ch);
  89.                 $contents = ob_get_contents();
  90.  
  91.                 ob_end_clean();
  92.                 curl_close($ch);
  93.                
  94.         //get mail list from the page information username && emailaddress
  95.         preg_match_all("/<strings*name="EMAIL;PREF">(.*)</string>/Umsi",$contents,$mails);
  96.         preg_match_all("/<strings*name="FN">(.*)</string>/Umsi",$contents,$names);
  97.         $users = array();
  98.         foreach($names[1] as $k=>$user)
  99.         {
  100.             //$user = iconv($user,'utf-8','gb2312');
  101.             $users[$mails[1][$k]] = $user;
  102.         }
  103.         if (!$users)
  104.         {
  105.             return '您的邮箱中尚未有联系人';
  106.         }      
  107.         
  108.         return $users;
  109.         }
  110.         
  111.         /**
  112.     * Get Header info
  113.     */
  114.     private function _getheader($username)
  115.     {
  116.                 $ch = curl_init();
  117.                 curl_setopt($ch, CURLOPT_URL, "http://entry.mail.126.com/cgi/ntesdoor?hid=10010102&lightweight=1&verifycookie=1&language=0&style=-1&username=".$username."@126.com");
  118.                 curl_setopt($ch, CURLOPT_COOKIEFILE, COOKIEJAR);  //当前使用的cookie
  119.                 curl_setopt($ch, CURLOPT_COOKIEJAR, COOKIEJAR);   //服务器返回的新cookie
  120.                 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  121.                 curl_setopt($ch, CURLOPT_HEADER, true);
  122.                 curl_setopt($ch, CURLOPT_NOBODY, true);
  123.                 $content=curl_exec($ch);
  124.                
  125.                 preg_match_all('/Location:s*(.*?)rn/i',$content,$regs);
  126.         $refer = $regs[1][0];
  127.         preg_match_all('/http://(.*?)//i',$refer,$regs);               
  128.         $host = $regs[1][0];
  129.         preg_match_all("/sid=(.*)/i",$refer,$regs);
  130.         $sid = $regs[1][0];
  131.                
  132.                 curl_close($ch);
  133.                 return array('sid'=>$sid,'refer'=>$refer,'host'=>$host);
  134.     }
  135. }
  136.  
  137. ?>

完整php 文件上传类

class UploadFile {
 /**
  * 允许的上传文件类型
  * @var array $allowFileTypes
  * @access private
  */
 private $allowFileTypes = array('jpeg','jpg','gif','bmp','png');

 /**
  * 允许的上传文件大小,单位字节
  * @var int $maxFileSize
  * @access public
  */
 public $maxFileSize = 8388608;

 /**
  * 构造函数
  */
 public function __construct() {

 }

 /**
  * 设置允许的文件类型
  * @param mixed $fileTypes 文件类型列表可以是数组和字符串,用“,”号隔开
  * @return void
  * @access public
  */
 public function setAllowFileType($fileTypes) {
  if (!is_array($fileTypes)) {
   $this->allowFileTypes = explode(',', $fileTypes);
  } else {
   $this->allowFileTypes = $fileTypes;
  }
  return;
 }

 /**
  * 上传文件
  * @param string $fileField  要上传的文件如$_FILES['file']
  * @param string $destFolder 上传的目录,会自动建立
  * @param string $fileTypes   上传后文件命名方式0使用原文件名1使用当前时间戳作为文件名
  * @return int
  * @access public
  */
 public function upload($fileField, $destFolder = './', $fileNameType = 1) {

  switch ($fileField['error']) {
   case UPLOAD_ERR_OK : //其值为 0,没有错误发生,文件上传成功。
   $upload_succeed = true;
   break;
   case UPLOAD_ERR_INI_SIZE : //其值为 1,上传的文件超过了 php.ini 中 upload_max_filesize 选项限制的值。
   case UPLOAD_ERR_FORM_SIZE : //其值为 2,上传文件的大小超过了 HTML 表单中 MAX_FILE_SIZE 选项指定的值。
   $errorMsg = '文件上传失败!失败原因:文件大小超出限制!';
   $errorCode = -103;
   $upload_succeed = false;
   break;
   case UPLOAD_ERR_PARTIAL : //值:3; 文件只有部分被上传。
   $errorMsg = '文件上传失败!失败原因:文件只有部分被上传!';
   $errorCode = -101;
   $upload_succeed = false;
   break;
   case UPLOAD_ERR_NO_FILE : //值:4; 没有文件被上传。
   $errorMsg = '文件上传失败!失败原因:没有文件被上传!';
   $errorCode = -102;
   $upload_succeed = false;
   break;
   case UPLOAD_ERR_NO_TMP_DIR : //其值为 6,找不到临时文件夹。PHP 4.3.10 和 PHP 5.0.3 引进。
   $errorMsg = '文件上传失败!失败原因:找不到临时文件夹!';
   $errorCode = -102;
   $upload_succeed = false;
   break;
   case UPLOAD_ERR_CANT_WRITE : //其值为 7,文件写入失败。PHP 5.1.0 引进。
   $errorMsg = '文件上传失败!失败原因:文件写入失败!';
   $errorCode = -102;
   $upload_succeed = false;
   break;
   default : //其它错误
   $errorMsg = '文件上传失败!失败原因:其它!';
   $errorCode = -100;
   $upload_succeed = false;
   break;
  }
  if ($upload_succeed) {
   if ($fileField['size']>$this->maxFileSize) {
    $errorMsg = '文件上传失败!失败原因:文件大小超出限制!';
    $errorCode = -103;
    $upload_succeed = false;
   }
   if ($upload_succeed) {
    $fileExt = FileSystem::fileExt($fileField['name']);
    if (!in_array(strtolower($fileExt),$this->allowFileTypes)) {
     $errorMsg = '文件上传失败!失败原因:文件类型不被允许!';
     $errorCode = -104;
     $upload_succeed = false;
    }
   }
  }
  if ($upload_succeed) {
   if (!is_dir($destFolder) && $destFolder!='./' && $destFolder!='../') {
    $dirname = '';
    $folders = explode('/',$destFolder);
    foreach ($folders as $folder) {
     $dirname .= $folder . '/';
     if ($folder!='' && $folder!='.' && $folder!='..' && !is_dir($dirname)) {
      mkdir($dirname);
     }
    }
    chmod($destFolder,0777);
   }
   switch ($fileNameType) {
    case 1:
     $fileName = date('YmdHis');
     $dot = '.';
     $fileFullName = $fileName . $dot . $fileExt;
     $i = 0;
     //判断是否有重名文件
     while (is_file($destFolder . $fileFullName)) {
      $fileFullName = $fileName . $i++ . $dot . $fileExt;
     }
     break;
    case 2:
     $fileFullName = date('YmdHis');
     $i = 0;
     //判断是否有重名文件
     while (is_file($destFolder . $fileFullName)) {
      $fileFullName = $fileFullName . $i++;
     }
     break;
    default:
     $fileFullName = $fileField['name'];
     break;
   }
   //die($destFolder . $fileFullName);
   $tempfile = str_replace('\\','\',$fileField['tmp_name']);
   //$files =
   if (move_uploaded_file($tempfile, $destFolder . $fileFullName)) {
    return $fileFullName;
   } else {
    $errorMsg = $destFolder.$fileFullName." 文件上传失败!失败原因:本地文件系统读写权限出错!";
    $errorCode = -105;
    $upload_succeed = false;
   }
  }
  if (!$upload_succeed) {
   throw new Exception($errorMsg,$errorCode);
  }

 }

[!--infotagslink--]

相关文章

  • php正确禁用eval函数与误区介绍

    eval函数在php中是一个函数并不是系统组件函数,我们在php.ini中的disable_functions是无法禁止它的,因这他不是一个php_function哦。 eval()针对php安全来说具有很...2016-11-25
  • php中eval()函数操作数组的方法

    在php中eval是一个函数并且不能直接禁用了,但eval函数又相当的危险了经常会出现一些问题了,今天我们就一起来看看eval函数对数组的操作 例子, <?php $data="array...2016-11-25
  • Python astype(np.float)函数使用方法解析

    这篇文章主要介绍了Python astype(np.float)函数使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-06-08
  • Python中的imread()函数用法说明

    这篇文章主要介绍了Python中的imread()函数用法说明,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-16
  • C# 中如何取绝对值函数

    本文主要介绍了C# 中取绝对值的函数。具有很好的参考价值。下面跟着小编一起来看下吧...2020-06-25
  • C#学习笔记- 随机函数Random()的用法详解

    下面小编就为大家带来一篇C#学习笔记- 随机函数Random()的用法详解。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • 金额阿拉伯数字转换为中文的自定义函数

    CREATE FUNCTION ChangeBigSmall (@ChangeMoney money) RETURNS VarChar(100) AS BEGIN Declare @String1 char(20) Declare @String2 char...2016-11-25
  • Android开发中findViewById()函数用法与简化

    findViewById方法在android开发中是获取页面控件的值了,有没有发现我们一个页面控件多了会反复研究写findViewById呢,下面我们一起来看它的简化方法。 Android中Fin...2016-09-20
  • C++中 Sort函数详细解析

    这篇文章主要介绍了C++中Sort函数详细解析,sort函数是algorithm库下的一个函数,sort函数是不稳定的,即大小相同的元素在排序后相对顺序可能发生改变...2022-08-18
  • PHP用strstr()函数阻止垃圾评论(通过判断a标记)

    strstr() 函数搜索一个字符串在另一个字符串中的第一次出现。该函数返回字符串的其余部分(从匹配点)。如果未找到所搜索的字符串,则返回 false。语法:strstr(string,search)参数string,必需。规定被搜索的字符串。 参数sea...2013-10-04
  • PHP函数分享之curl方式取得数据、模拟登陆、POST数据

    废话不多说直接上代码复制代码 代码如下:/********************** curl 系列 ***********************///直接通过curl方式取得数据(包含POST、HEADER等)/* * $url: 如果非数组,则为http;如是数组,则为https * $header:...2014-06-07
  • php中的foreach函数的2种用法

    Foreach 函数(PHP4/PHP5)foreach 语法结构提供了遍历数组的简单方式。foreach 仅能够应用于数组和对象,如果尝试应用于其他数据类型的变量,或者未初始化的变量将发出错误信息。...2013-09-28
  • C语言中free函数的使用详解

    free函数是释放之前某一次malloc函数申请的空间,而且只是释放空间,并不改变指针的值。下面我们就来详细探讨下...2020-04-25
  • PHP函数strip_tags的一个bug浅析

    PHP 函数 strip_tags 提供了从字符串中去除 HTML 和 PHP 标记的功能,该函数尝试返回给定的字符串 str 去除空字符、HTML 和 PHP 标记后的结果。由于 strip_tags() 无法实际验证 HTML,不完整或者破损标签将导致更多的数...2014-05-31
  • IE6-IE9中tbody的innerHTML不能赋值的解决方法

    IE6-IE9中tbody的innerHTML不能赋值,重现代码如下 复制代码 代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"/> <title>IE6-IE9中tbody的innerHTML不能复制bug</title> </head> <body style="height:3...2014-06-07
  • SQL Server中row_number函数的常见用法示例详解

    这篇文章主要给大家介绍了关于SQL Server中row_number函数的常见用法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-08
  • PHP加密解密函数详解

    分享一个PHP加密解密的函数,此函数实现了对部分变量值的加密的功能。 加密代码如下: /* *功能:对字符串进行加密处理 *参数一:需要加密的内容 *参数二:密钥 */ function passport_encrypt($str,$key){ //加密函数 srand(...2015-10-30
  • php的mail函数发送UTF-8编码中文邮件时标题乱码的解决办法

    最近遇到一个问题,就是在使用php的mail函数发送utf-8编码的中文邮件时标题出现乱码现象,而邮件正文却是正确的。最初以为是页面编码的问题,发现页面编码utf-8没有问题啊,找了半天原因,最后找到了问题所在。 1.使用 PEAR 的...2015-10-21
  • C#中加载dll并调用其函数的实现方法

    下面小编就为大家带来一篇C#中加载dll并调用其函数的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧...2020-06-25