浏览器大全:是一个提供流行浏览器教程、在线学习分享的学习平台!

PHP中常用的一些技巧总结(归纳)

网页的本质就是超级文本标记语言,通过结合使用其他的Web技术(如:脚本语言、公共网关接口、组件等),可以创造出功能强大的网页。因而,超级文本标记语言是万维网(Web)编程的基础,也就是说万维网是建立在超文本基础之上的。超级文本标记语言之所以称为超文本标记语言,是因为文本中包含了所谓“超级链接”点。
这篇文章给大家介绍的内容是关于PHP中常用的一些功能总结(归纳),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

1.获取网站是http还是https ?

$http_type = ((isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] == 
'on')      (isset($_SERVER['HTTP_X_FORWARDED_PROTO']) && 
$_SERVER['HTTP_X_FORWARDED_PROTO'] == 'https')) ? 'https://' : 
'http://';

2.删除数组中的空数据

function where_data($data)
			{
			    foreach ($data as $k => $v) {
			        if (empty($v) && $v !='0') {
			            unset($data[$k]);
			        }
			    }
			    return $data;
			}

3.截取富文本中的其中一部分

/**
 * 将富文本中文字截取其中的一部分
 * @param $content
 * @return string
 */
function html_substr_content($content,$length=100)
{
    $content = htmlspecialchars_decode($content);      //把一些预定义的 HTML 实体转换为字符
    $content = str_replace(" ", "", $content);     //将空格替换成空
    $content = strip_tags($content);                 //函数剥去字符串中的 HTML、XML 以及 PHP 的标签,获取纯文本内容
    $con = mb_substr($content, 0, $length, "utf-8");   //返回字符串中的前100字符串长度的字符
    return $con;
}

一、黑名单过滤

function is_spam($text, $file, $split = ':', $regex = false){
		  $handle = fopen($file, 'rb');
			  $contents = fread($handle, filesize($file));
			  fclose($handle);
			  $lines = explode("n", $contents);
			$arr = array();
			foreach($lines as $line){
			list($word, $count) = explode($split, $line);
			if($regex)
		$arr[$word] = $count;
			else
			$arr[preg_quote($word)] = $count;
			}
			preg_match_all("~".implode('  ', array_keys($arr))."~", $text, $matches);
			$temp = array();
			foreach($matches[0] as $match){
			if(!in_array($match, $temp)){
			$temp[$match] = $temp[$match] + 1;
			if($temp[$match] >= $arr[$word])
			return true;
			}
			}
			return false;
			}
			$file = 'spam.txt';
			$str = 'This string has cat, dog word';
			if(is_spam($str, $file))
			echo 'this is spam';
			else
			echo 'this is not spam';
			ab:3
			dog:3
			cat:2
			monkey:2

二、随机颜色生成器

function randomColor() {
			  $str = '#';
			  for($i = 0 ; $i < 6 ; $i++) {
			    $randNum = rand(0 , 15);
			    switch ($randNum) {
			      case 10: $randNum = 'A'; break;
			      case 11: $randNum = 'B'; break;
			      case 12: $randNum = 'C'; break;
			      case 13: $randNum = 'D'; break;
			      case 14: $randNum = 'E'; break;
			      case 15: $randNum = 'F'; break;
			    }
			    $str .= $randNum;
			  }
			  return $str;
			}
			$color = randomColor();

三、从网上下载文件

set_time_limit(0);
			// Supports all file types
			// URL Here:
			$url = 'http://php.cn/some_video.flv';
			$pi = pathinfo($url);
			$ext = $pi['extension'];
			$name = $pi['filename'];
			// create a new cURL resource
			$ch = curl_init();
			// set URL and other appropriate options
			curl_setopt($ch, CURLOPT_URL, $url);
			curl_setopt($ch, CURLOPT_HEADER, false);
			curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
			curl_setopt($ch, CURLOPT_AUTOREFERER, true);
			curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
                        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
                        // grab URL and pass it to the browser
			$opt = curl_exec($ch);
			// close cURL resource, and free up system resources
			curl_close($ch);
			$saveFile = $name.'.'.$ext;
			if(preg_match("/[^0-9a-z._-]/i", $saveFile))
			$saveFile = md5(microtime(true)).'.'.$ext;
			$handle = fopen($saveFile, 'wb');
			fwrite($handle, $opt);
			fclose($handle);

四、强制下载文件

$filename = $_GET['file']; //Get the fileid from the URL
// Query the file ID
$query = sprintf("SELECT * FROM tableName WHERE id = '%s'",mysql_real_escape_string($filename));
$sql = mysql_query($query);
if(mysql_num_rows($sql) > 0){
$row = mysql_fetch_array($sql);
// Set some headers
header("Pragma: public");
header("Expires: 0");
header("Cache-Control: must-revalidate, post-check=0, pre-check=0");
header("Content-Type: application/force-download");
header("Content-Type: application/octet-stream");
header("Content-Type: application/download");
header("Content-Disposition: attachment; filename=".basename($row['FileName']).";");
header("Content-Transfer-Encoding: binary");
header("Content-Length: ".filesize($row['FileName']));
@readfile($row['FileName']);
exit(0);
}else{
header("Location: /");
exit;
}

五、截取图片

$filename= "test.jpg";
list($w, $h, $type, $attr) = getimagesize($filename);
$src_im = imagecreatefromjpeg($filename);
$src_x = '0'; // begin x
$src_y = '0'; // begin y
$src_w = '100'; // width
$src_h = '100'; // height
$dst_x = '0'; // destination x
$dst_y = '0'; // destination y
$dst_im = imagecreatetruecolor($src_w, $src_h);
$white = imagecolorallocate($dst_im, 255, 255, 255);
imagefill($dst_im, 0, 0, $white);
imagecopy($dst_im, $src_im, $dst_x, $dst_y, $src_x, $src_y, $src_w, $src_h);
header("Content-type: image/png");
imagepng($dst_im);
imagedestroy($dst_im);

六、检查网站是否宕机

function Visit($url){
    $agent = "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)";$ch=curl_init();
curl_setopt ($ch, CURLOPT_URL,$url );
curl_setopt($ch, CURLOPT_USERAGENT, $agent);
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch,CURLOPT_VERBOSE,false);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch,CURLOPT_SSLVERSION,3);
curl_setopt($ch,CURLOPT_SSL_VERIFYHOST, FALSE);
$page=curl_exec($ch);
//echo curl_error($ch);
$httpcode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if($httpcode>=200 && $httpcode<300) return true;
else return false;
}
if (Visit("http://www.google.com"))
echo "Website OK"."n";
else
echo "Website DOWN";

相关文章推荐:

什么是php引用变量?PHP中引用是如何实现

php7和php5有什么不同之处?php5与php7之间的对比

以上就是PHP中常用的一些功能总结(归纳)的详细内容,更多请关注php中文网其它相关文章!


网站建设是一个广义的术语,涵盖了许多不同的技能和学科中所使用的生产和维护的网站。



相关软件

2345加速浏览器官方版

2345加速浏览器官方版 | 56.2MB

2345加速浏览器官方版

新一代2345加速浏览器采用Chromium和IE双内核,主打极速与安全特性。基于Chromium深度定制,引入网页智能预加载技术,访问网页更快速..

QQ浏览器官方正式版

QQ浏览器官方正式版 | 49.67MB

QQ浏览器官方正式版

QQ浏览器秉承TT浏览器1-4系列方便易用的特点,但技术架构不同,交互和视觉表现也重新设计,采用Chromium内核+IE双内核,让浏览快速稳定...

百度浏览器最新版下载

百度浏览器最新版下载 | 13.3MB

百度浏览器最新版下载

q百度浏览器,是一款简洁轻快、智能懂你的浏览器。依靠百度强大的搜索平台,在满足用户浏览网页的基础上,它整合百度体系业务优势,带给用户更方便的浏览方式功能...

UC浏览器官方正式版

UC浏览器官方正式版 | 44.2MB

UC浏览器官方正式版

UC浏览器(UC Browser)是UC Mobile Limited在2004年8月开发的一款软件,分uc手机浏览器和uc浏览器电脑版。UC浏览器是全球使用量最大的第三方手机浏览器...

猎豹浏览器2022最新版下载

猎豹浏览器2022下载 | 45MB

猎豹浏览器2022最新版下载

猎豹安全浏览器对Chrome的Webkit内核进行了超过100项的技术优化,访问网页速度更快。其具有首创的智能切换引擎,动态选择内核匹配不同网页...

360安全浏览器官方版下载

360安全浏览器下载 | 21.4MB

360安全浏览器官方版下载

360安全浏览器拥有全国最大的恶意网址库,采用恶意网址拦截技术,可自动拦截挂马、欺诈、网银仿冒等恶意网址。独创沙箱技术,在隔离模式即使访问****也不会感染...