Share useful PHP code snippets
This article mainly introduces "sharing useful PHP code snippets". In daily operation, I believe many people have doubts about sharing useful PHP code snippets. The editor consulted all kinds of materials and sorted out simple and easy-to-use operation methods. I hope it will be helpful to answer the doubts of "sharing useful PHP code snippets"! Next, please follow the editor to study!
1. Find the distance between Longitudes and Latitudes
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; $feet = $kilometers * 1.609344; $kilometers = $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 = > $value) {echo $unit.': '.number_format ($value,4).} The example returns the following: miles: 2.6025 feet: 13741.4350 yards: 4580.4783 kilometers: 4.1884 meters: 4188.3894
two。 Improve cURL function
Function xcurl ($url,$ref=null,$post=array (), $ua= "Mozilla/5.0 (X11; Linux x8634; 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;}}
3. Clean up user input
] *? >. *? @ si', / / Strip out javascript'@ @ 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;}? >
4. Detect geographic location through IP (city, country)
Function detect_city ($ip) {$default = 'Hollywood, CA'; 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 (' {City: ([^)