首页 > 编程 > PHP > 正文

10个超级有用的PHP代码片段果断收藏

2020-03-22 17:25:55
字体:
来源:转载
供稿:网友
function getDistanceBetweenPointsNew($latitude1, $longitude1, $latitude2, $longitude2) { $theta = $longitude1 - $longitude2; $miles = (sin(deg2rad($latitude1)) * sin(deg2rad($latitude2))) + (cos(deg2rad($latitude1)) * cos(deg2rad($latitude2)) * cos(deg2rad($theta))); $miles = acos($miles); $miles = rad2deg($miles); $miles = $miles * 60 * 1.1515; $feet = $miles * 5280; $yards = $feet / 3; $kilometers = $miles * 1.609344; $meters = $kilometers * 1000; return compact('miles','feet','yards','kilometers','meters'); $point1 = array('lat' = 40.770623, 'long' = -73.964367); $point2 = array('lat' = 40.758224, 'long' = -73.917404); $distance = getDistanceBetweenPointsNew($point1['lat'], $point1['long'], $point2['lat'], $point2['long']); foreach ($distance as $unit = $html' target='_blank'>value) { echo $unit.': '.number_format($value,4).' The example returns the following: miles: 2.6025 feet: 13,741.4350 yards: 4,580.4783 kilometers: 4.1884 meters: 4,188.3894 2.完善cURL功能function xcurl($url,$ref=null,$post=array(),$ua="Mozilla/5.0 (X11; Linux x86_64; rv:2.2a1pre) Gecko/20110324 Firefox/4.2a1pre",$print=false) { $ch = curl_init(); curl_setopt($ch, CURLOPT_AUTOREFERER, true); if(!empty($ref)) { curl_setopt($ch, CURLOPT_REFERER, $ref); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); if(!empty($ua)) { curl_setopt($ch, CURLOPT_USERAGENT, $ua); if(count($post) 0){ curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $post); $output = curl_exec($ch); curl_close($ch); if($print) { print($output); } else { return $output;
'@ [///!]* [^ ]* @si', // Strip out HTML tags '@]* .* @siU', // Strip style tags properly '@@' // Strip multi-line comments $output = preg_replace($search, '', $input); return $output; $val) { $output[$var] = sanitize($val); else { if (get_magic_quotes_gpc()) { $input = stripslashes($input); $input = cleanInput($input); $output = mysql_real_escape_string($input); return $output;
if (!is_string($ip) || strlen($ip) 1 || $ip == '127.0.0.1' || $ip == 'localhost') $ip = '8.8.8.8'; $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('{
}i', $content, $regs) ) { $state = $regs[1]; } if( $city!='' && $state!='' ){ $location = $city . ', ' . $state; return $location; }else{ return $default; } }
6.检测浏览器语言,只提供可用的$availableLanguages作为数组(‘en', ‘de', ‘es')function get_client_language($availableLanguages, $default='en'){ if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { $langs=explode(',',$_SERVER['HTTP_ACCEPT_LANGUAGE']); //start going through each one foreach ($langs as $value){ $choice=substr($value,0,2); if(in_array($choice, $availableLanguages)){ return $choice; return $default; 7.创建数据URLfunction data_uri($file, $mime) { $contents=file_get_contents($file); $base64=base64_encode($contents); echo "data:$mime;base64,$base64"; } 8.创建更加友好的页面标题SEO URL输入示例:$title = “This foo's bar is rockin' cool!”; echo makeseoname($title); //RETURNS: //this-foos-bar-is-rockin-coolfunction make_seo_name($title) { return preg_replace('/[^a-z0-9_-]/i', '', strtolower(str_replace(' ', '-', trim($title))));
// f(ucking) u(ncrackable) e(ncryption) function by BlackHatDBL (www.netforme.net) function fue($hash,$times) { // Execute the encryption(s) as many times as the user wants for($i=$times;$i $i--) { // Encode with base64... $hash=base64_encode($hash); // and md5... $hash=md5($hash); // sha1... $hash=sha1($hash); // sha256... (one more) $hash=hash("sha256", $hash); // sha512 $hash=hash("sha512", $hash); // Finaly, when done, return the value return $hash; } 10a.Tweeter Feed Runner——使用任意twitter名,可在任意页面上加载用户资源。pversion; public function loadTimeline($user, $max = 20){ $this- twitURL .= 'statuses/user_timeline.xml screen_name='.$user.'&count='.$max; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $this- twitURL); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $this- xml = curl_exec($ch); return $this; public function getTweets(){ $this- twitterArr = $this- getTimelineArray(); $tweets = array(); foreach($this- twitterArr- status as $status){ $tweets[$status- created_at- __toString()] = $status- text- __toString(); return $tweets; public function getTimelineArray(){ return simplexml_load_string($this- xml); public function formatTweet($tweet){ $tweet = preg_replace("/(http(.+ ))( |$)/","$1$3", $tweet); $tweet = preg_replace("/#(.+ )(/h|/W|$)/", "#$1$2", $tweet); $tweet = preg_replace("/@(.+ )(/h|/W|$)/", "@$1$2", $tweet); return $tweet; 10b. Tweeter Feed Runner——用于在主题中创建文件,比如:example.php
loadTimeline("phpsnips")- getTweets(); foreach($feed as $time = $message){ echo " div ".$twitter- formatTweet($message)." br / At: ".$time." /div 直接拿来用,10个PHP代码片段,还犹豫什么,果断收藏吧PHP教程

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表