Actions
  SnipPets » History » Revision 6
      « Previous |
    Revision 6/7
      (diff)
      | Next »
    
    Simon, 01/20/2011 12:07 PM 
    
    
Snippets¶
15 usefull regex¶
http://www.catswhocode.com/blog/15-php-regular-expressions-for-web-developers
Convert relative to absolute URL¶
Certainly the best and safer way
 - http://nadeausoftware.com/node/79
the way it simply works
- from http://www.howtoforge.com/forums/showthread.php?t=4
function absolute_url($txt, $base_url){
  $needles = array('href="', 'src="', 'background="');
  $new_txt = _;
  if(substr($base_url,-1) != '/') $base_url .= '/';
  $new_base_url = $base_url;
  $base_url_parts = parse_url($base_url);
  foreach($needles as $needle){
    while($pos = strpos($txt, $needle)){
      $pos += strlen($needle);
      if(substr($txt,$pos,7) != 'http://' && substr($txt,$pos,8) != 'https://' && substr($txt,$pos,6) != 'ftp://' && substr($txt,$pos,9) != 'mailto://'){
        if(substr($txt,$pos,1) == '/') $new_base_url = $base_url_parts['scheme'].'://'.$base_url_parts['host'];
        $new_txt .= substr($txt,0,$pos).$new_base_url;
      } else {
        $new_txt .= substr($txt,0,$pos);
      }
      $txt = substr($txt,$pos);
    }
    $txt = $new_txt.$txt;
    $new_txt = _;
  }
  return $txt;
}  
	
Remove trailing whitespaces¶
http://jimbojw.com/wiki/index.php?title=How_to_find_PHP_files_with_trailing_whitespace
Command Line : 
echo '<?php foreach (glob("**/*.php") as $file){if (preg_match( "/\\?".">\\s\\s+\\Z/m", file_get_contents($file))) echo("$file\n");} ?>' | php
	PHP file script :
<?php
foreach (glob('**/*.php') as $file){
  if (preg_match('/\\?'.'>\\s\\s+\\Z/m',file_get_contents($file)))
    echo("$file\n");
}
?>
	
Remove .svn folders under Windows¶
for /r repository %f in (.svn) do rd /S /Q "%f"
from : http://www.jonathan-petitcolas.com/fr/supprimer-recursivement-les-dossiers-svn-sous-windows/
Ignore specific subfolders in .htaccess (URL rewrite)¶
Method 1 :
  [[RewriteEngine]] on
  #
  # stuff to let through (ignore)
  [[RewriteCond]] %{REQUEST_URI} "/folder1/" [OR]
  [[RewriteCond]] %{REQUEST_URI} "/folder2/" 
  [[RewriteRule]] (.*) $1 [L]
  #
	Method 2 :
[[RewriteEngine]] On
[[RewriteBase]] /
Rewritecond  %{REQUEST_URI} !^/linea21/.*$ [NC]
[[RewriteCond]] %{REQUEST_FILENAME} !-f
[[RewriteCond]] %{REQUEST_FILENAME} !-d
[[RewriteRule]] . /index.php [L]
	(Ignore rules for linea21 sub-folder)
Updated by Simon almost 15 years ago · 6 revisions