必须收藏的23个php实用代码片段


Posted in PHP onFebruary 02, 2016

在编写代码的时候有个神奇的工具总是好的!下面这里收集了 40+ PHP 代码片段,可以帮助你开发 PHP 项目。
这些 PHP 片段对于 PHP 初学者也非常有帮助,非常容易学习,让我们开始学习吧~
1. 发送 SMS
在开发 Web 或者移动应用的时候,经常会遇到需要发送 SMS 给用户,或者因为登录原因,或者是为了发送信息。下面的 PHP 代码就实现了发送 SMS 的功能。
为了使用任何的语言发送 SMS,需要一个 SMS gateway。大部分的 SMS 会提供一个 API,这里是使用 MSG91 作为 SMS gateway。

function send_sms($mobile,$msg)
{
$authKey = "XXXXXXXXXXX";
date_default_timezone_set("Asia/Kolkata");
$date = strftime("%Y-%m-%d %H:%M:%S");
//Multiple mobiles numbers separated by comma
$mobileNumber = $mobile;
      
//Sender ID,While using route4 sender id should be 6 characters long.
$senderId = "IKOONK";
      
//Your message to send, Add URL encoding here.
$message = urlencode($msg);
      
//Define route
$route = "template";
//Prepare you post parameters
$postData = array(
  'authkey' => $authKey,
  'mobiles' => $mobileNumber,
  'message' => $message,
  'sender' => $senderId,
  'route' => $route
);
      
//API URL
$url="https://control.msg91.com/sendhttp.php";
      
// init the resource
$ch = curl_init();
curl_setopt_array($ch, array(
  CURLOPT_URL => $url,
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_POST => true,
  CURLOPT_POSTFIELDS => $postData
  //,CURLOPT_FOLLOWLOCATION => true
));
      
      
//Ignore SSL certificate verification
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
      
      
//get response
$output = curl_exec($ch);
//Print error if any
if(curl_errno($ch))
{
  echo 'error:' . curl_error($ch);
}
      
curl_close($ch);
}

其中“$authKey = "XXXXXXXXXXX";”需要你输入你的密码,“$senderId = "IKOONK";”需要你输入你的 SenderID。当输入移动号码的时候需要指定国家代码 (比如,美国是 1,印度是 91 )。
语法:

<?php
$message = "Hello World";
$mobile = "918112998787";
send_sms($mobile,$message);
?>

2. 使用 mandrill 发送邮件
Mandrill 是一款强大的 SMTP 提供器。开发者倾向于使用一个第三方 SMTP provider 来获取更好的收件交付。
下面的函数中,你需要把 “Mandrill.php” 放在同一个文件夹,作为 PHP 文件,这样就可以使用TA来发送邮件。

function send_email($to_email,$subject,$message1)
{
require_once 'Mandrill.php';
$apikey = 'XXXXXXXXXX'; //specify your api key here
$mandrill = new Mandrill($apikey);
      
$message = new stdClass();
$message->html = $message1;
$message->text = $message1;
$message->subject = $subject;
$message->from_email = "blog@koonk.com";//Sender Email
$message->from_name = "KOONK";//Sender Name
$message->to = array(array("email" => $to_email));
$message->track_opens = true;
      
$response = $mandrill->messages->send($message);
}

$apikey = 'XXXXXXXXXX'; //specify your api key here”这里需要你指定你的 API 密钥(从 Mandrill 账户中获得)。
语法:

<?php
$to = "abc@example.com";
$subject = "This is a test email";
$message = "Hello World!";
send_email($to,$subject,$message);
?>

为了达到最好的效果,最好按照 Mandrill 的教程去配置 DNS。

3. PHP 函数:阻止 SQL 注入
SQL 注入或者 SQLi 常见的攻击网站的手段,使用下面的代码可以帮助你防止这些工具。

function clean($input)
{
  if (is_array($input))
  {
    foreach ($input as $key => $val)
     {
      $output[$key] = clean($val);
      // $output[$key] = $this->clean($val);
    }
  }
  else
  {
    $output = (string) $input;
    // if magic quotes is on then use strip slashes
    if (get_magic_quotes_gpc())
    {
      $output = stripslashes($output);
    }
    // $output = strip_tags($output);
    $output = htmlentities($output, ENT_QUOTES, 'UTF-8');
  }
// return the clean text
  return $output;
}

语法:

<?php
$text = "<script>alert(1)</script>";
$text = clean($text);
echo $text;
?>

4. 检测用户位置
使用下面的函数,可以检测用户是在哪个城市访问你的网站

function detect_city($ip) {
          
    $default = 'UNKNOWN';
      
    $curlopt_useragent = 'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9.2) Gecko/20100115 Firefox/3.6 (.NET CLR 3.5.30729)';
          
    $url = 'http://ipinfodb.com/ip_locator.php?ip=' . urlencode($ip);
    $ch = curl_init();
          
    $curl_opt = array(
      CURLOPT_FOLLOWLOCATION => 1,
      CURLOPT_HEADER   => 0,
      CURLOPT_RETURNTRANSFER => 1,
      CURLOPT_USERAGENT  => $curlopt_useragent,
      CURLOPT_URL    => $url,
      CURLOPT_TIMEOUT     => 1,
      CURLOPT_REFERER     => 'http://' . $_SERVER['HTTP_HOST'],
    );
          
    curl_setopt_array($ch, $curl_opt);
          
    $content = curl_exec($ch);
          
    if (!is_null($curl_info)) {
      $curl_info = curl_getinfo($ch);
    }
          
    curl_close($ch);
          
    if ( preg_match('{<li>City : ([^<]*)</li>}i', $content, $regs) ) {
      $city = $regs[1];
    }
    if ( preg_match('{<li>State/Province : ([^<]*)</li>}i', $content, $regs) ) {
      $state = $regs[1];
    }
      
    if( $city!='' && $state!='' ){
     $location = $city . ', ' . $state;
     return $location;
    }else{
     return $default;
    }
          
  }

语法:

<?php
$ip = $_SERVER['REMOTE_ADDR'];
$city = detect_city($ip);
echo $city;
?>

5. 获取 Web 页面的源代码
使用下面的函数,可以获取任意 Web 页面的 HTML 代码

function display_sourcecode($url)
{
$lines = file($url);
$output = "";
foreach ($lines as $line_num => $line) {
  // loop thru each line and prepend line numbers
  $output.= "Line #<b>{$line_num}</b> : " . htmlspecialchars($line) . "\n";
}
}

语法:

<?php
$url = "http://blog.koonk.com";
$source = display_sourcecode($url);
echo $source;
?>

6. 计算喜欢你的 Facebook 页面的用户

function fb_fan_count($facebook_name)
{
  $data = json_decode(file_get_contents("https://graph.facebook.com/".$facebook_name));
  $likes = $data->likes;
  return $likes;
}

语法:

<?php
$page = "koonktechnologies";
$count = fb_fan_count($page);
echo $count;
?>

7. 确定任意图片的主导颜色

function dominant_color($image)
{
$i = imagecreatefromjpeg($image);
for ($x=0;$x<imagesx($i);$x++) {
  for ($y=0;$y<imagesy($i);$y++) {
    $rgb = imagecolorat($i,$x,$y);
    $r  = ($rgb >> 16) & 0xFF;
    $g  = ($rgb >> & 0xFF;
    $b  = $rgb & 0xFF;
    $rTotal += $r;
    $gTotal += $g;
    $bTotal += $b;
    $total++;
  }
}
$rAverage = round($rTotal/$total);
$gAverage = round($gTotal/$total);
$bAverage = round($bTotal/$total);
}

8. whois 查询
使用下面的函数可以获取任何域名用户的完整细节

function whois_query($domain) {
     
  // fix the domain name:
  $domain = strtolower(trim($domain));
  $domain = preg_replace('/^http:\/\//i', '', $domain);
  $domain = preg_replace('/^www\./i', '', $domain);
  $domain = explode('/', $domain);
  $domain = trim($domain[0]);
     
  // split the TLD from domain name
  $_domain = explode('.', $domain);
  $lst = count($_domain)-1;
  $ext = $_domain[$lst];
     
  // You find resources and lists
  // like these on wikipedia:
  //
  // http://de.wikipedia.org/wiki/Whois
  //
  $servers = array(
    "biz" => "whois.neulevel.biz",
    "com" => "whois.internic.net",
    "us" => "whois.nic.us",
    "coop" => "whois.nic.coop",
    "info" => "whois.nic.info",
    "name" => "whois.nic.name",
    "net" => "whois.internic.net",
    "gov" => "whois.nic.gov",
    "edu" => "whois.internic.net",
    "mil" => "rs.internic.net",
    "int" => "whois.iana.org",
    "ac" => "whois.nic.ac",
    "ae" => "whois.uaenic.ae",
    "at" => "whois.ripe.net",
    "au" => "whois.aunic.net",
    "be" => "whois.dns.be",
    "bg" => "whois.ripe.net",
    "br" => "whois.registro.br",
    "bz" => "whois.belizenic.bz",
    "ca" => "whois.cira.ca",
    "cc" => "whois.nic.cc",
    "ch" => "whois.nic.ch",
    "cl" => "whois.nic.cl",
    "cn" => "whois.cnnic.net.cn",
    "cz" => "whois.nic.cz",
    "de" => "whois.nic.de",
    "fr" => "whois.nic.fr",
    "hu" => "whois.nic.hu",
    "ie" => "whois.domainregistry.ie",
    "il" => "whois.isoc.org.il",
    "in" => "whois.ncst.ernet.in",
    "ir" => "whois.nic.ir",
    "mc" => "whois.ripe.net",
    "to" => "whois.tonic.to",
    "tv" => "whois.tv",
    "ru" => "whois.ripn.net",
    "org" => "whois.pir.org",
    "aero" => "whois.information.aero",
    "nl" => "whois.domain-registry.nl"
  );
     
  if (!isset($servers[$ext])){
    die('Error: No matching nic server found!');
  }
     
  $nic_server = $servers[$ext];
     
  $output = '';
     
  // connect to whois server:
  if ($conn = fsockopen ($nic_server, 43)) {
    fputs($conn, $domain."\r\n");
    while(!feof($conn)) {
      $output .= fgets($conn,128);
    }
    fclose($conn);
  }
  else { die('Error: Could not connect to ' . $nic_server . '!'); }
     
  return $output;
}

语法:

<?php
$domain = "http://www.blog.koonk.com";
$result = whois_query($domain);
print_r($result);
?>

9. 验证邮箱地址
有时候,当在网站填写表单,用户可能会输入错误的邮箱地址,这个函数可以验证邮箱地址是否有效。

function is_validemail($email)
{
$check = 0;
if(filter_var($email,FILTER_VALIDATE_EMAIL))
{
$check = 1;
}
return $check;
}

语法:

<?php
$email = "blog@koonk.com";
$check = is_validemail($email);
echo $check;
// If the output is 1, then email is valid.
?>

10. 获取用户的真实  IP

function getRealIpAddr() 
{ 
  if (!emptyempty($_SERVER['HTTP_CLIENT_IP'])) 
  { 
    $ip=$_SERVER['HTTP_CLIENT_IP']; 
  } 
  elseif (!emptyempty($_SERVER['HTTP_X_FORWARDED_FOR'])) 
  //to check ip is pass from proxy 
  { 
    $ip=$_SERVER['HTTP_X_FORWARDED_FOR']; 
  } 
  else 
  { 
    $ip=$_SERVER['REMOTE_ADDR']; 
  } 
  return $ip; 
}

语法:

<?php
$ip = getRealIpAddr();
echo $ip;
?>

11. 转换 URL:从字符串变成超链接
如果你正在开发论坛,博客或者是一个常规的表单提交,很多时候都要用户访问一个网站。使用这个函数,URL 字符串就可以自动的转换为超链接。

function makeClickableLinks($text)
{ 
 $text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)', 
 '<a href="\1">\1</a>', $text); 
 $text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)', 
 '\1<a href="http://\2">\2</a>', $text); 
 $text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})', 
 '<a href="mailto:\1">\1</a>', $text); 
     
return $text; 
}

语法:

<?php
$text = "This is my first post on http://blog.koonk.com";
$text = makeClickableLinks($text);
echo $text;
?>

12. 阻止多个 IP 访问你的网站
这个代码片段可以方便你禁止某些特定的 IP 地址访问你的网站

if ( !file_exists('blocked_ips.txt') ) {
 $deny_ips = array(
 '127.0.0.1',
 '192.168.1.1',
 '83.76.27.9',
 '192.168.1.163'
 );
} else {
 $deny_ips = file('blocked_ips.txt');
}
// read user ip adress:
$ip = isset($_SERVER['REMOTE_ADDR']) ? trim($_SERVER['REMOTE_ADDR']) : '';
    
// search current IP in $deny_ips array
if ( (array_search($ip, $deny_ips))!== FALSE ) {
 // address is blocked:
 echo 'Your IP adress ('.$ip.') was blocked!';
 exit;
}

13. 强制性文件下载
如果你需要下载特定的文件而不用另开新窗口,下面的代码片段可以帮助你。

function force_download($file)
{
  $dir   = "../log/exports/";
  if ((isset($file))&&(file_exists($dir.$file))) {
    header("Content-type: application/force-download");
    header('Content-Disposition: inline; filename="' . $dir.$file . '"');
    header("Content-Transfer-Encoding: Binary");
    header("Content-length: ".filesize($dir.$file));
    header('Content-Type: application/octet-stream');
    header('Content-Disposition: attachment; filename="' . $file . '"');
    readfile("$dir$file");
  } else {
    echo "No file selected";
  }
}

语法:

<php
force_download("image.jpg");
?>

14. 创建 JSON 数据
使用下面的 PHP 片段可以创建 JSON 数据,可以方便你创建移动应用的 Web 服务

$json_data = array ('id'=>1,'name'=>"Mohit");
echo json_encode($json_data);

15. 压缩 zip 文件
使用下面的 PHP 片段可以即时压缩 zip 文件

function create_zip($files = array(),$destination = '',$overwrite = false) { 
  //if the zip file already exists and overwrite is false, return false 
  if(file_exists($destination) && !$overwrite) { return false; } 
  //vars 
  $valid_files = array(); 
  //if files were passed in... 
  if(is_array($files)) { 
    //cycle through each file 
    foreach($files as $file) { 
      //make sure the file exists 
      if(file_exists($file)) { 
        $valid_files[] = $file; 
      } 
    } 
  } 
  //if we have good files... 
  if(count($valid_files)) { 
    //create the archive 
    $zip = new ZipArchive(); 
    if($zip->open($destination,$overwrite ? ZIPARCHIVE::OVERWRITE : ZIPARCHIVE::CREATE) !== true) { 
      return false; 
    } 
    //add the files 
    foreach($valid_files as $file) { 
      $zip->addFile($file,$file); 
    } 
    //debug 
    //echo 'The zip archive contains ',$zip->numFiles,' files with a status of ',$zip->status; 
         
    //close the zip -- done! 
    $zip->close(); 
         
    //check to make sure the file exists 
    return file_exists($destination); 
  } 
  else 
  { 
    return false; 
  } 
}

语法:

<?php
$files=array('file1.jpg', 'file2.jpg', 'file3.gif'); 
create_zip($files, 'myzipfile.zip', true);
?>

16. 解压文件

function unzip($location,$newLocation)
{
    if(exec("unzip $location",$arr)){
      mkdir($newLocation);
      for($i = 1;$i< count($arr);$i++){
        $file = trim(preg_replace("~inflating: ~","",$arr[$i]));
        copy($location.'/'.$file,$newLocation.'/'.$file);
        unlink($location.'/'.$file);
      }
      return TRUE;
    }else{
      return FALSE;
    }
}

语法:

<?php
unzip('test.zip','unziped/test'); //File would be unzipped in unziped/test folder
?>

17. 缩放图片

function resize_image($filename, $tmpname, $xmax, $ymax) 
{ 
  $ext = explode(".", $filename); 
  $ext = $ext[count($ext)-1]; 
     
  if($ext == "jpg" || $ext == "jpeg") 
    $im = imagecreatefromjpeg($tmpname); 
  elseif($ext == "png") 
    $im = imagecreatefrompng($tmpname); 
  elseif($ext == "gif") 
    $im = imagecreatefromgif($tmpname); 
       
  $x = imagesx($im); 
  $y = imagesy($im); 
       
  if($x <= $xmax && $y <= $ymax) 
    return $im; 
     
  if($x >= $y) { 
    $newx = $xmax; 
    $newy = $newx * $y / $x; 
  } 
  else { 
    $newy = $ymax; 
    $newx = $x / $y * $newy; 
  } 
       
  $im2 = imagecreatetruecolor($newx, $newy); 
  imagecopyresized($im2, $im, 0, 0, 0, 0, floor($newx), floor($newy), $x, $y); 
  return $im2; 
}

18. 使用 mail() 发送邮件
 之前我们提供了如何使用 Mandrill 发送邮件的 PHP 代码片段,但是如果你不想使用第三方服务,那么可以使用下面的 PHP 代码片段。

function send_mail($to,$subject,$body)
{
$headers = "From: KOONK\r\n";
$headers .= "Reply-To: blog@koonk.com\r\n";
$headers .= "Return-Path: blog@koonk.com\r\n";
$headers .= "X-Mailer: PHP5\n";
$headers .= 'MIME-Version: 1.0' . "\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";
mail($to,$subject,$body,$headers);
}

语法:

<?php
$to = "admin@koonk.com";
$subject = "This is a test mail";
$body = "Hello World!";
send_mail($to,$subject,$body);
?>

19. 把秒转换成天数,小时数和分钟

function secsToStr($secs) {
  if($secs>=86400){$days=floor($secs/86400);$secs=$secs%86400;$r=$days.' day';if($days<>1){$r.='s';}if($secs>0){$r.=', ';}}
  if($secs>=3600){$hours=floor($secs/3600);$secs=$secs%3600;$r.=$hours.' hour';if($hours<>1){$r.='s';}if($secs>0){$r.=', ';}}
  if($secs>=60){$minutes=floor($secs/60);$secs=$secs%60;$r.=$minutes.' minute';if($minutes<>1){$r.='s';}if($secs>0){$r.=', ';}}
  $r.=$secs.' second';if($secs<>1){$r.='s';}
  return $r;
}

语法:

<?php
$seconds = "56789";
$output = secsToStr($seconds);
echo $output;
?>

20. 数据库连接
连接 MySQL 数据库

<?php
$DBNAME = 'koonk';
$HOST = 'localhost';
$DBUSER = 'root';
$DBPASS = 'koonk';
$CONNECT = mysql_connect($HOST,$DBUSER,$DBPASS);
if(!$CONNECT)
{
  echo 'MySQL Error: '.mysql_error();
}
$SELECT = mysql_select_db($DBNAME);
if(!$SELECT)
{
  echo 'MySQL Error: '.mysql_error();
}
?>

21. 目录清单
使用下面的 PHP 代码片段可以在一个目录中列出所有文件和文件夹

function list_files($dir)
{
  if(is_dir($dir))
  {
    if($handle = opendir($dir))
    {
      while(($file = readdir($handle)) !== false)
      {
        if($file != "." && $file != ".." && $file != "Thumbs.db"/*pesky windows, images..*/)
        {
          echo '<a target="_blank" href="'.$dir.$file.'">'.$file.'</a>'."\n";
        }
      }
      closedir($handle);
    }
  }
}

语法:

<?php
  list_files("images/"); //This will list all files of images folder
?>

22. 检测用户语言
使用下面的 PHP 代码片段可以检测用户浏览器所使用的语言

function get_client_language($availableLanguages, $default='en'){
  if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
    $langs=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']);
    foreach ($langs as $value){
      $choice=substr($value,0,2);
      if(in_array($choice, $availableLanguages)){
        return $choice;
      }
    }
  }
  return $default;
}

23. 查看 CSV 文件

function readCSV($csvFile){
  $file_handle = fopen($csvFile, 'r');
  while (!feof($file_handle) ) {
    $line_of_text[] = fgetcsv($file_handle, 1024);
  }
  fclose($file_handle);
  return $line_of_text;
}

语法:

<?php
$csvFile = "test.csv";
$csv = readCSV($csvFile);
$a = csv[0][0]; // This will get value of Column 1 & Row 1
?>

以上就是本文的全部内容,希望对大家的学习有所帮助。

PHP 相关文章推荐
php中批量修改文件后缀名的函数代码
Oct 23 PHP
使用HMAC-SHA1签名方法详解
Jun 26 PHP
thinkphp 一个页面使用2次分页的实现方法
Jul 15 PHP
PHP_Cooikes不同页面无法传递的解决方法
Mar 07 PHP
教你在PHPStorm中配置Xdebug
Jul 27 PHP
php利用header函数下载各种文件
Aug 24 PHP
Laravel使用memcached缓存对文章增删改查进行优化的方法
Oct 08 PHP
php 解析xml 的四种方法详细介绍
Oct 26 PHP
PHP文件与目录操作示例
Dec 24 PHP
PHP使用redis消息队列发布微博的方法示例
Jun 22 PHP
thinkPHP5框架实现基于ajax的分页功能示例
Jun 12 PHP
laravel Task Scheduling(任务调度)在windows下的使用详解
Oct 22 PHP
如何批量清理系统临时文件(语言:C#、 C/C++、 php 、python 、java )
Feb 01 #PHP
PHP自带方法验证邮箱是否存在
Feb 01 #PHP
YII CLinkPager分页类扩展增加显示共多少页
Jan 29 #PHP
实例详解PHP中html word 互转的方法
Jan 28 #PHP
PHP Curl模拟登录微信公众平台、新浪微博实例代码
Jan 28 #PHP
PHP的压缩函数实现:gzencode、gzdeflate和gzcompress的区别
Jan 27 #PHP
PHP文件上传之多文件上传的实现思路
Jan 27 #PHP
You might like
其他功能
2006/10/09 PHP
PHP下通过file_get_contents的代理使用方法
2011/02/16 PHP
php防止sql注入代码实例
2013/12/18 PHP
2014过年倒计时示例
2014/01/31 PHP
php+ajax导入大数据时产生的问题处理
2014/06/11 PHP
php命令行(cli)模式下报require 加载路径错误的解决方法
2015/11/23 PHP
thinkphp5 加载静态资源路径与常量的方法
2017/12/24 PHP
javascript学习随笔(使用window和frame)的技巧
2007/03/08 Javascript
jQuery 图像裁剪插件Jcrop的简单使用
2009/05/22 Javascript
Jquery ui css framework
2010/06/28 Javascript
利用google提供的API(JavaScript接口)获取网站访问者IP地理位置的代码详解
2010/07/24 Javascript
javascript检测浏览器的缩放状态实现代码
2014/09/28 Javascript
Node.js中的模块机制学习笔记
2014/11/04 Javascript
js控制文本框输入的字符类型方法汇总
2015/06/19 Javascript
Vue.js中用webpack合并打包多个组件并实现按需加载
2017/02/17 Javascript
Angular 2.x学习教程之结构指令详解
2017/05/25 Javascript
vue实现裁切图片同时实现放大、缩小、旋转功能
2018/03/02 Javascript
Vue组件内部实现一个双向数据绑定的实例代码
2019/04/04 Javascript
js之切换全屏和退出全屏实现代码实例
2019/09/09 Javascript
Vue插件之滑动验证码用法详解
2020/04/05 Javascript
js+canvas实现图片格式webp/png/jpeg在线转换
2020/08/22 Javascript
[03:44]2014DOTA2国际邀请赛 71专访:DK战队赛前讨论视频遭泄露
2014/07/13 DOTA
Python爬取京东的商品分类与链接
2016/08/26 Python
python用reduce和map把字符串转为数字的方法
2016/12/19 Python
Python实现脚本锁功能(同时只能执行一个脚本)
2017/05/10 Python
实践Vim配置python开发环境
2018/07/02 Python
pytorch实现seq2seq时对loss进行mask的方式
2020/02/18 Python
python GUI库图形界面开发之PyQt5打印控件QPrinter详细使用方法与实例
2020/02/28 Python
python实现将中文日期转换为数字日期
2020/07/14 Python
世界上最好的旅行夹克:BauBax
2018/12/23 全球购物
.net工程师笔试题
2012/06/09 面试题
拆迁委托协议书
2014/09/15 职场文书
elementui的el-popover修改样式不生效的解决
2021/06/30 Javascript
「海贼王」112.9万粉丝纪念图标公布
2022/03/21 日漫
JavaScript实现外溢动态爱心的效果的示例代码
2022/03/21 Javascript
MySQL安装失败的原因及解决步骤
2022/06/14 MySQL