Upgrade CodeIgniteru z verze 2 na 3 – na co si dát pozor?

Dokumentace CodeIgniteru celkem detailně popisuje postup upgradu na této stránce. Kromě inkrementálních upgradů je tam delší článek o upgradu verze 2.2.x na 3.0.x. Vypíchnu sem jen několik věcí, se kterými jsem měl konkrétní problémy:

  • Metody třídy Input, Session a Config v případě neodeslání hodnoty/nenalezení nevrací FALSE jako ve verzi 2, ale nově NULL – dává to větší smysl, ale může být problém, pokud porovnáváte typově a v celém projektu se to dost špatně hledá, je to velká změna.
  • Třídy musí začínat velkým písmenem – může být problém, pokud pracujete na Windows. Git totiž rozlišuje velikosti písmen.
  • Sessions už se neukládají do cookies. Můžete si vybrat, jaký session driver použijete. Nejjednodušší je souborový systém a databáze, my z výkonnostních důvodů použili memcached.
  • V databázovém configu se změnilo dost věcí, ale jedna věc je zásadní – musíte vypnout ‘pconnect’ – persistent connection.
  • Z pravidel třídy Form_validation mizí ‘xss_clean’. XSS by se mělo aplikovat na output, takže ho z validace odstranili.
  • Položka ‘base_url’ v configu nemůže být prázdná. Pokud ji nemůžete nastavit v configu, můžete ji změnit i později v kódu.

Jak jsem si vypnul notifikace

Před několika měsíci jsem udělal skvělou věc – vypnul si notifikace pracovního emailu na mobilu + odstranil si ikonku z plochy. Když chci na email, tak se tam dostanu, ale nemusím se stresovat příchozími emaily, prostě je vyřeším až v práci.

Dalším skvělým zlepšovákem je kontrolovat email jen několikrát denně, nenechat jej otevřen. Má to jednu nevýhodu – když řešíte email, který vyžaduje nějakou práci, tak máte tendenci email nechat otevřený a poté vás stresuje ikonka o příchozích emailech, které postupně chodí. V práci používáme BitBucket, pro živnost používám Trello, takže zadání úkolů se snažím řešit tam a email minimalizovat. Dojít, vyřešit inbox a odejít.