Emmet (ex-Zen Coding) Eclipse plugin

Emmet (ex-Zen Coding) is an editor plugin for high-speed HTML, XML, XSL (or any other structured code format) coding and editing (see abbreviations syntax). The core of this plugin is a powerful abbreviation engine which allows you to expand expression – similar to CSS selectors -into HTML code.

Type

  #page>div.logo+ul#navigation>li*5>a{Item $}

followed by Tab to get

  <div id="page">
    <div class="logo"></div>
    <ul id="navigation">
        <li><a href="">Item 1</a></li>
        <li><a href="">Item 2</a></li>
        <li><a href="">Item 3</a></li>
        <li><a href="">Item 4</a></li>
        <li><a href="">Item 5</a></li>
    </ul>
  </div>

Eclipse plugin can be found at: https://marketplace.eclipse.org/content/emmet-ex-zen-coding-eclipse-plugin

HeidiSQL

HeidiSQL is a useful and reliable tool designed for web developers using the popular MySQL server, Microsoft SQL databases and PostgreSQL.

Composer

Composer je nástroj pre správu dependency v PHP. To vám umožní deklarovať knižnice, ktoré váš projekt používa a composer bude spravovať tieto knižnice ako aj potrebné súvisiace knižnice za vás – teda ich nainštaluje resp. spraví update. Viac na getcomposer.org

Ďalšie package managers sú npm, bower. V prípade, že si nainštalujete napr. node.js, ten má už npm v sebe.

Odstránenie položiek z poľa

Pokiaľ potrebujete elegantne odstrániť z poľa všetky reťazce a nechať iba čísla, použite toto:

$arr = array_filter($arr, 'is_numeric');

Pokiaľ chcete opak – nechať len reťazce, tak takto:

$arr = array_filter($arr, 'is_string');

Get enum values from MySQL

Pokiaľ potrebujete zistiť enum hodnoty, ktoré sú nastavené v pre konkrétny stĺpec v tabuľke MySQL pomocou PHP, dá sa požiť nasledujúca funkcia:

function get_enum_values( $table, $field )
{
    $type = $this->db->query( "SHOW COLUMNS FROM {$table} WHERE Field = '{$field}'" )->row( 0 )->Type;
    preg_match("/^enum\(\'(.*)\'\)$/", $type, $matches);
    $enum = explode("','", $matches[1]);
    return $enum;
}

Ďalšie nájdete v diskusii na stackoverflow.

Ako odfiltrovať crawler botov

Web crawler je bot, ktorý prechádza web a indexuje ho. Tiež je známy aj pod názvom indexer. Niekedy chcete logovať všetky kliky na určitú URL adresu (napr. z dôvodu štatistiky čítanosti, alebo konverzie pokiaľ je to nejaký affiliate link).

Problémom je, že takýto bot vlastne nie je reálnym užívateľom klikajúcim na Váš odkaz ale len automatickým programom. Tým pádom sa vlastne skresľuje štatistika klikov.

Riešením je odfiltrovať kliky obsahujúce slová, ktoré používajú boty a budú v premennej $_SERVER[‘HTTP_USER_AGENT’].

Databázu takýchto slov môžete získať z nejakého open source projektu – napr. PhpBB:

INSERT INTO `phpbb_bots` (`bot_id`, `bot_active`, `bot_name`, `user_id`, `bot_agent`, `bot_ip`) VALUES
(1, 1, 'AdsBot [Google]', 3, 'AdsBot-Google', ''),
(2, 1, 'Alexa [Bot]', 4, 'ia_archiver', ''),
(3, 1, 'Alta Vista [Bot]', 5, 'Scooter/', ''),
(4, 1, 'Ask Jeeves [Bot]', 6, 'Ask Jeeves', ''),
(5, 1, 'Baidu [Spider]', 7, 'Baiduspider+(', ''),
(6, 1, 'Exabot [Bot]', 8, 'Exabot/', ''),
(7, 1, 'FAST Enterprise [Crawler]', 9, 'FAST Enterprise Crawler', ''),
(8, 1, 'FAST WebCrawler [Crawler]', 10, 'FAST-WebCrawler/', ''),
(9, 1, 'Francis [Bot]', 11, 'http://www.neomo.de/', ''),
(10, 1, 'Gigabot [Bot]', 12, 'Gigabot/', ''),
(11, 1, 'Google Adsense [Bot]', 13, 'Mediapartners-Google', ''),
(12, 1, 'Google Desktop', 14, 'Google Desktop', ''),
(13, 1, 'Google Feedfetcher', 15, 'Feedfetcher-Google', ''),
(14, 1, 'Google [Bot]', 16, 'Googlebot', ''),
(15, 1, 'Heise IT-Markt [Crawler]', 17, 'heise-IT-Markt-Crawler', ''),
(16, 1, 'Heritrix [Crawler]', 18, 'heritrix/1.', ''),
(17, 1, 'IBM Research [Bot]', 19, 'ibm.com/cs/crawler', ''),
(18, 1, 'ICCrawler - ICjobs', 20, 'ICCrawler - ICjobs', ''),
(19, 1, 'ichiro [Crawler]', 21, 'ichiro/', ''),
(20, 1, 'Majestic-12 [Bot]', 22, 'MJ12bot/', ''),
(21, 1, 'Metager [Bot]', 23, 'MetagerBot/', ''),
(22, 1, 'MSN NewsBlogs', 24, 'msnbot-NewsBlogs/', ''),
(23, 1, 'MSN [Bot]', 25, 'msnbot/', ''),
(24, 1, 'MSNbot Media', 26, 'msnbot-media/', ''),
(25, 1, 'NG-Search [Bot]', 27, 'NG-Search/', ''),
(26, 1, 'Nutch [Bot]', 28, 'http://lucene.apache.org/nutch/', ''),
(27, 1, 'Nutch/CVS [Bot]', 29, 'NutchCVS/', ''),
(28, 1, 'OmniExplorer [Bot]', 30, 'OmniExplorer_Bot/', ''),
(29, 1, 'Online link [Validator]', 31, 'online link validator', ''),
(30, 1, 'psbot [Picsearch]', 32, 'psbot/0', ''),
(31, 1, 'Seekport [Bot]', 33, 'Seekbot/', ''),
(32, 1, 'Sensis [Crawler]', 34, 'Sensis Web Crawler', ''),
(33, 1, 'SEO Crawler', 35, 'SEO search Crawler/', ''),
(34, 1, 'Seoma [Crawler]', 36, 'Seoma [SEO Crawler]', ''),
(35, 1, 'SEOSearch [Crawler]', 37, 'SEOsearch/', ''),
(36, 1, 'Snappy [Bot]', 38, 'Snappy/1.1 ( http://www.urltrends.com/ )', ''),
(37, 1, 'Steeler [Crawler]', 39, 'http://www.tkl.iis.u-tokyo.ac.jp/~crawler/', ''),
(38, 1, 'Synoo [Bot]', 40, 'SynooBot/', ''),
(39, 1, 'Telekom [Bot]', 41, 'crawleradmin.t-info@telekom.de', ''),
(40, 1, 'TurnitinBot [Bot]', 42, 'TurnitinBot/', ''),
(41, 1, 'Voyager [Bot]', 43, 'voyager/1.0', ''),
(42, 1, 'W3 [Sitesearch]', 44, 'W3 SiteSearch Crawler', ''),
(43, 1, 'W3C [Linkcheck]', 45, 'W3C-checklink/', ''),
(44, 1, 'W3C [Validator]', 46, 'W3C_*Validator', ''),
(45, 1, 'WiseNut [Bot]', 47, 'http://www.WISEnutbot.com', ''),
(46, 1, 'YaCy [Bot]', 48, 'yacybot', ''),
(47, 1, 'Yahoo MMCrawler [Bot]', 49, 'Yahoo-MMCrawler/', ''),
(48, 1, 'Yahoo Slurp [Bot]', 50, 'Yahoo! DE Slurp', ''),
(49, 1, 'Yahoo [Bot]', 51, 'Yahoo! Slurp', ''),
(50, 1, 'YahooSeeker [Bot]', 52, 'YahooSeeker/', '');

Ako presmerovať všetky stránky na novú doménu

Pokiaľ sa sťahujete z jednej domény na druhú, môžete na presmerovanie využiť .htaccess

RewriteEngine On
RewriteRule ^(.*)$ http://newdomain.com/ [R=301]

Alternatívne ak chcete zachovať aj cesty:

RewriteEngine on 
RewriteRule ^(.*)$ http://www.newdomain.com/$1 [R=301,L]

Pokiaľ potrebujete presmerovať 404 tak potom takto:

ErrorDocument 404 http://www.newdomain.com/404.php

Sú aj ďalšie spôsoby, pozrite si diskusiu na stackoverflow.

Ako naimportovať veľkú databázu

Pokiaľ potrebujete jednoducho naimportovať veľkú databázu z jedného servera na druhý, určite sa Vám zíde program s názvom BigDump. V phpMyAdmin dáte vyexportovať celú databázu do súboru, následne na to ten súbor nakopírujete na cieľový server spolu so súborom bigdump.php. Ten predtým musíte ešte editovaním priamo zdrojového kódu nastaviť – hlavne údaje o databáze.

Samozrejme môžete použiť aj mysql príkaz:

mysql -u username -p -h hostname databasename < dump.sql

Alternatívne cez phpmyadmin a to zmenením konštánt v phpmyadmin.conf

php_admin_value upload_max_filesize 128M
php_admin_value post_max_size 128M