• Home
  • WORDPRESS
    • PLUGINS
    • PHP
    • Themes
    • DEVELOPMENT
      • Javascript
      • JQuery
      • Mootools
  • WEB DESIGN
    • DESIGN
    • CSS
    • HTML
  • TYPOGRAPHY
    • FONTS
  • RESOURCES
    • TUTORIALS
    • THEMES
    • SLIDERS
    • TECHNOLOGY
  • ARCHIVES
  • CONTACT
  • Advertise

Code Geekz

    • Most Popular

      All time

    • 30 Best Tools for Data Visualization

      37 Comments

    • Best PHP Frameworks for Developers

      33 Comments

    • Latest Stories

      What is new?

    • Free SPF Lookup Tool For Securing Email Servers And Reducing Spam Risks

      June 25, 2025

    • Building Product Teams That Scale: The Case for Remote .NET Developers

      May 21, 2025

    • Comments

      Most Recent

    • B. Frances on:

      Best WordPress Wedding Themes

    • Ultimate Content Locker Pro on:

      Best WordPress Social Content Locker Plugins for 2017

  • Home
  • WORDPRESS
    • PLUGINS
    • PHP
    • Themes
    • DEVELOPMENT
      • Javascript
      • JQuery
      • Mootools
  • WEB DESIGN
    • DESIGN
    • CSS
    • HTML
  • TYPOGRAPHY
    • FONTS
  • RESOURCES
    • TUTORIALS
    • THEMES
    • SLIDERS
    • TECHNOLOGY
  • ARCHIVES
  • CONTACT
  • Advertise

10 PHP Snippets for Developers

8
  • by Gavin
  • In DEVELOPMENT · PHP · RESOURCES · Uncategorized
  • — 19 Jul, 2013
php snippets

PHP code is interpreted by a web server with a PHP processor module which generates the resulting web page: PHP commands can be embedded directly into an HTML source document rather than calling an external file to process the data.

PHP has hundreds of base functions and thousands more via extensions. These functions are well documented on the PHP site; however, the built-in library has a wide variety of naming conventions and inconsistencies.

The PHP library contains innumerable useful php code snippets which every developer needs to have in their “toolbox”. These code snippets offer a variety of handy functions which can ultimately end up saving you time. Today, we’ve collected 10 useful code snippets which you may find useful within your coding endeavors.Enjoy !

1. Find Distance Between Two Longitudes, 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;
    $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 => $value) {
    echo $unit.': '.number_format($value,4).'<br />';
}

The example returns the following:

miles: 2.6025
feet: 13,741.4350
yards: 4,580.4783
kilometers: 4.1884
meters: 4,188.3894

 
Source  

2. Perfect cURL Function


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) &gt; 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;
	}
}

 
Source  

3. PHP Functions to Clean User Input


<?php
function cleanInput($input) {

  $search = array(
    '@<script[^>]*?>.*?</script>@si',   // Strip out javascript
    '@<[\/\!]*?[^<>]*?>@si',            // Strip out HTML tags
    '@<style[^>]*?>.*?</style>@siU',    // Strip style tags properly
    '@<![\s\S]*?--[ \t\n\r]*>@'         // Strip multi-line comments
  );

    $output = preg_replace($search, '', $input);
    return $output;
  }
?>
<?php
function sanitize($input) {
    if (is_array($input)) {
        foreach($input as $var=>$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;
}
?>

 
Source  

4. Detect Location by IP (City, State)


function detect_city($ip) {

        $default = 'Hollywood, CA';

        if (!is_string($ip) || strlen($ip) &lt; 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  =&gt; 1,
            CURLOPT_HEADER      =&gt; 0,
            CURLOPT_RETURNTRANSFER  =&gt; 1,
            CURLOPT_USERAGENT   =&gt; $curlopt_useragent,
            CURLOPT_URL       =&gt; $url,
            CURLOPT_TIMEOUT         =&gt; 1,
            CURLOPT_REFERER         =&gt; '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('{
<ul>
	<li>City : ([^&lt;]*)</li>
</ul>
}i', $content, $regs) ) { $city = $regs[1]; } if ( preg_match('{
<ul>
	<li>State/Province : ([^&lt;]*)</li>
</ul>
&nbsp;

}i', $content, $regs) ) { $state = $regs[1]; } if( $city!='' &amp;&amp; $state!='' ){ $location = $city . ', ' . $state; return $location; }else{ return $default; } }

 
Source  

5. Password Strength


<?php 
/** 
 *  
 * @param String $string 
 * @return float 
 *  
 * Returns a float between 0 and 100. The closer the number is to 100 the 
 * the stronger password is; further from 100 the weaker the password is. 
 */ 
function password_strength($string){ 
    $h    = 0; 
    $size = strlen($string); 
    foreach(count_chars($string, 1) as $v){ 
        $p = $v / $size; 
        $h -= $p * log($p) / log(2); 
    } 
    $strength = ($h / 4) * 100; 
    if($strength > 100){ 
        $strength = 100; 
    } 
    return $strength; 
} 

var_dump(password_strength("Correct Horse Battery Staple")); 
echo "<br>"; 
var_dump(password_strength("Super Monkey Ball")); 
echo "<br>"; 
var_dump(password_strength("Tr0ub4dor&3")); 
echo "<br>"; 
var_dump(password_strength("abc123")); 
echo "<br>"; 
var_dump(password_strength("sweet"));

 
Source  

6. Detect Browser Language

Just provide <strong>$availableLanguages</strong> as an array('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;
}

 
Source  

7. Create Data URI’S

function data_uri($file, $mime) {
  $contents=file_get_contents($file);
  $base64=base64_encode($contents);
  echo "data:$mime;base64,$base64";
}

 
Source  

8. Make page titles seo-friendly for URL

If you have a title, for something like a blog or product, and want to make an seo-friendly name to call it, here is a function.

<strong>SAMPLE INPUT:</strong> $title = "This foo's bar is rockin' cool!"; echo makeseoname($title); //RETURNS: //this-foos-bar-is-rockin-cool


function make_seo_name($title) {
	return preg_replace('/[^a-z0-9_-]/i', '', strtolower(str_replace(' ', '-', trim($title))));
}

 
Source  

9. Ultimate Encryption Function

// 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&gt;0;$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;
}

 
Source  

10a. Tweeter Feed Runner

<span>Use any twitter name, and load the users feed to display on any page.</span>

<?php 
class Twitter{ 
    protected $twitURL = 'http://api.twitter.com/1/'; 
    protected $xml; 
    protected $tweets  = array(), $twitterArr = array(); 
    protected $pversion = "1.0.0"; 
    public function pversion(){ 
        return $this->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(.+?))( |$)/","<a href=\"$0\">$1</a>$3", $tweet); 
        $tweet = preg_replace("/#(.+?)(\h|\W|$)/", "<a href=\"https://twitter.com/i/#!/search/?q=%23$1&src=hash\">#$1</a>$2", $tweet); 
        $tweet = preg_replace("/@(.+?)(\h|\W|$)/", "<a href=\"http://twitter.com/#!/$1\">@$1</a>$2", $tweet); 
        return $tweet; 
    } 
}

 

10b. Tweeter Feed Runner

<span>Create A File in your Theme such as : example.php</span>
&nbsp;
<?php 
$twitter = new Twitter(); 
$feed = $twitter->loadTimeline("phpsnips")->getTweets(); 
foreach($feed as $time => $message){ 
    echo "&lt;div class='tweet'&gt;".$twitter->formatTweet($message)."&lt;br /&gt;At: ".$time."&lt;/div&gt;"; 
}

 

Source  

Share

Tags: PHPPHP Snippetsphp toolsWeb-Development

— Gavin

A Web addicted Geek stuck inside Tron.

  • Previous story 20 jQuery Plugins You Should Use Today
  • Next story 16 jQuery Date Picker Plugins to Plan Your Tasks

You may also like...

  • 15 JavaScript Frameworks for Accelerated Development
  • remote work The Future of Business Technology
  • How to Find a Trustworthy Scrap Catalytic Converter Buyer
  • 20 Best Online Form Builders

Enter your em@il & get our posts delivered.





  • Enter your em@il & get our posts delivered.

  • Codegeekz
    • Home
    • DEVELOPMENT
    • 10 PHP Snippets for Developers
    • Home
    • WORDPRESS
      • PLUGINS
      • PHP
      • Themes
      • DEVELOPMENT
        • Javascript
        • JQuery
        • Mootools
    • WEB DESIGN
      • DESIGN
      • CSS
      • HTML
    • TYPOGRAPHY
      • FONTS
    • RESOURCES
      • TUTORIALS
      • THEMES
      • SLIDERS
      • TECHNOLOGY
    • ARCHIVES
    • CONTACT
    • Advertise

    CODEGEEKZ.COM