php 抓取网页生成图片(4.PHP验证邮件地址电子邮件验证文件压缩PHP解压缩 )

优采云 发布时间: 2021-11-18 10:03

  php 抓取网页生成图片(4.PHP验证邮件地址电子邮件验证文件压缩PHP解压缩

)

  1. PHP 可以读取随机字符串

  这段代码将创建一个可读的字符串,使其更接近字典中的单词,实用且具有密码验证功能。

  /**************

*@length - length of random string (must be a multiple of 2)

**************/

function readable_random_string($length = 6){

$conso=array("b","c","d","f","g","h","j","k","l",

"m","n","p","r","s","t","v","w","x","y","z");

$vocal=array("a","e","i","o","u");

$password="";

srand ((double)microtime()*1000000);

$max = $length/2;

for($i=1; $iname; //prints foo

echo $obj->interest[1]; //prints php

  8. PHP 解析 XML 数据

  //xml string

$xml_string="

Foo

foo@bar.com

Foobar

foobar@foo.com

";

//load the xml string using simplexml

$xml = simplexml_load_string($xml_string);

//loop through the each node of user

foreach ($xml->user as $user)

{

//access attribute

echo $user['id'], ' ';

//subnodes are accessed by -> operator

echo $user->name, ' ';

echo $user->email, '<br />';

}

  9. PHP 创建日志缩写名称

  创建用户友好的日志缩写。

  function create_slug($string){

$slug=preg_replace('/[^A-Za-z0-9-]+/', '-', $string);

return $slug;

}

  10. PHP获取客户端真实IP地址

  此函数将获取用户的真实 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;

}

  11. PHP强制文件下载

  为用户提供强制文件下载功能。

  /********************

*@file - path to file

*/

function force_download($file)

{

if ((isset($file))&&(file_exists($file))) {

header("Content-length: ".filesize($file));

header('Content-Type: application/octet-stream');

header('Content-Disposition: attachment; filename="' . $file . '"');

readfile("$file");

}

else {

echo "No file selected";

}

}

  12. PHP 创建标签云

  function getCloud( $data = array(), $minFontSize = 12, $maxFontSize = 30 )

{

$minimumCount = min( array_values( $data ) );

$maximumCount = max( array_values( $data ) );

$spread = $maximumCount - $minimumCount;

$cloudHTML = '';

$cloudTags = array();

$spread == 0 && $spread = 1;

foreach( $data as $tag => $count )

{

$size = $minFontSize + ( $count - $minimumCount )

* ( $maxFontSize - $minFontSize ) / $spread;

$cloudTags[] = ''

. htmlspecialchars( stripslashes( $tag ) ) . '';

}

return join( "\n", $cloudTags ) . "\n";

}

/**************************

**** Sample usage ***/

$arr = Array('Actionscript' => 35, 'Adobe' => 22, 'Array' => 44, 'Background' => 43,

'Blur' => 18, 'Canvas' => 33, 'Class' => 15, 'Color Palette' => 11, 'Crop' => 42,

'Delimiter' => 13, 'Depth' => 34, 'Design' => 8, 'Encode' => 12, 'Encryption' => 30,

'Extract' => 28, 'Filters' => 42);

echo getCloud($arr, 12, 36);

  13. PHP查找两个字符串的相似度

  PHP 提供了一个很少使用的similar_text 函数,但是这个函数对于比较两个字符串并返回相似度的百分比非常有用。

  similar_text($string1, $string2, $percent);

//$percent will have the percentage of similarity

  14. PHP在应用中使用Gravatar通用头像

  随着 WordPress 变得越来越流行,Gravatar 也越来越流行。由于 Gravatar 提供了易于使用的 API,因此将其合并到应用程序中也非常方便。

  /******************

*@email - Email address to show gravatar for

*@size - size of gravatar

*@default - URL of default gravatar to use

*@rating - rating of Gravatar(G, PG, R, X)

*/

function show_gravatar($email, $size, $default, $rating)

{

echo '

'&default='.$default.'&size='.$size.'&rating='.$rating.'" />';

}

  15. PHP 在字符断点处截断文本

  所谓断字,就是换行时可以断字的地方。此函数将在连字符处截断字符串。

  // Original PHP code by Chirp Internet: www.chirp.com.au

// Please acknowledge use of this code by including this header.

function myTruncate($string, $limit, $break=".", $pad="...") {

// return with no change if string is shorter than $limit

if(strlen($string) 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;

}

}

/***** Example Usage ***/

$files=array('file1.jpg', 'file2.jpg', 'file3.gif');

create_zip($files, 'myzipfile.zip', true);

  17. PHP解压Zip文件

  /**********************

*@file - path to zip file

*@destination - destination directory for unzipped files

*/

function unzip_file($file, $destination){

// create object

$zip = new ZipArchive() ;

// open archive

if ($zip->open($file) !== TRUE) {

die (’Could not open archive’);

}

// extract contents to destination directory

$zip->extractTo($destination);

// close archive

$zip->close();

echo 'Archive extracted to directory';

}

  18. PHP 为 URL 地址预设 http 字符串

  有时需要在某些表单中接受 URL 输入,但用户很少添加字段,此代码会将字段添加到 URL。

  if (!preg_match("/^(http|ftp):/", $_POST['url'])) {

$_POST['url'] = 'http://'.$_POST['url'];

}

  19. PHP 将 URL 字符串转换为超链接

  此函数将 URL 和电子邮件地址字符串转换为可点击的超链接。

  function makeClickableLinks($text) {

$text = eregi_replace('(((f|ht){1}tp://)[-a-zA-Z0-9@:%_+.~#?&//=]+)',

'\1', $text);

$text = eregi_replace('([[:space:]()[{}])(www.[-a-zA-Z0-9@:%_+.~#?&//=]+)',

'\1\2', $text);

$text = eregi_replace('([_.0-9a-z-]+@([0-9a-z][0-9a-z-]+.)+[a-z]{2,3})',

'\1', $text);

return $text;

}

  20. PHP 调整图片大小

  创建图像缩略图需要很多时间,这段代码将有助于理解缩略图的逻辑。

  /**********************

*@filename - path to the image

*@tmpname - temporary path to thumbnail

*@xmax - max width

*@ymax - max height

*/

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 feed->entry['circulation'];

$nb = 0;

foreach($xml->feed->children() as $circ){

$nb += $circ['circulation'];

}

return round($nb/$interval);

}

  24. 自动生成密码

  function generatePassword($length=9, $strength=0) {

$vowels = 'aeuy';

$consonants = 'bdghjmnpqrstvz';

if ($strength >= 1) {

$consonants .= 'BDGHJLMNPQRSTVWXZ';

}

if ($strength >= 2) {

$vowels .= "AEUY";

}

if ($strength >= 4) {

$consonants .= '23456789';

}

if ($strength >= 8 ) {

$vowels .= '@#$%';

}

$password = '';

$alt = time() % 2;

for ($i = 0; $i < $length; $i++) {

if ($alt == 1) {

$password .= $consonants[(rand() % strlen($consonants))];

$alt = 0;

} else {

$password .= $vowels[(rand() % strlen($vowels))];

$alt = 1;

}

}

return $password;

}

  25. 压缩多个CSS文件

  header('Content-type: text/css');

ob_start("compress");

function compress($buffer) {

/* remove comments */

$buffer = preg_replace('!/\*[^*]*\*+([^/][^*]*\*+)*/!', '', $buffer);

/* remove tabs, spaces, newlines, etc. */

$buffer = str_replace(array("\r\n", "\r", "\n", "\t", ' ', ' ', ' '), '', $buffer);

return $buffer;

}

/* your css files */

include('master.css');

include('typography.css');

include('grid.css');

include('print.css');

include('handheld.css');

ob_end_flush();

  26. 获取短网址

  function getTinyUrl($url) {

return file_get_contents("http://tinyurl.com/api-create.php?url=".$url);

}

  27. 根据生日计算年龄

  function age($date){

$year_diff = '';

$time = strtotime($date);

if(FALSE === $time){

return '';

}

$date = date('Y-m-d', $time);

list($year,$month,$day) = explode("-",$date);

$year_diff = date("Y") – $year;

$month_diff = date("m") – $month;

$day_diff = date("d") – $day;

if ($day_diff < 0 || $month_diff < 0) $year_diff–;

return $year_diff;

}

  28. 计算执行时间

  //Create a variable for start time

$time_start = microtime(true);

// Place your PHP/HTML/JavaScript/CSS/Etc. Here

//Create a variable for end time

$time_end = microtime(true);

//Subtract the two times to get seconds

$time = $time_end - $time_start;

echo 'Script took '.$time.' seconds to execute';

  29. PHP维护模式

  function maintenance($mode = FALSE){

if($mode){

if(basename($_SERVER['SCRIPT_FILENAME']) != 'maintenance.php'){

header("Location: http://example.com/maintenance.php");

exit;

}

}else{

if(basename($_SERVER['SCRIPT_FILENAME']) == 'maintenance.php'){

header("Location: http://example.com/");

exit;

}

}

}

  30. 防止CSS样式被缓存

<p>

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线