Upgrade to Pro — share decks privately, control downloads, hide ads and more …

PHP Lab

PHP Lab

LeoNguyen.com

July 27, 2013
Tweet

More Decks by LeoNguyen.com

Other Decks in Programming

Transcript

  1. LeoNguyen.com

  2. Outline - References (php.leonguyen.com/references.html) - Repositories (php.leonguyen.com/repositories.html) - Library -

    Framework - Optimization - Profiling - Performance
  3. References

  4. References - PHP Manual (www.php.net/manual/en/) - W3Schools (www.w3schools.com/php/) - W3schools

    (www.w3schools.in) - W3resource.com (www.w3resource.com) - WebCheatSheet (webcheatsheet.com/php/) - PHP Best Practices (phpbestpractices.org) - PHP Master (www.sitepoint.com/php) - Advanced PHP Tutorial (advancedphptutorial.blogspot.com) - Smart Tutorial (www.smarttutorials.net) - TekBrand (tekbrand.com/category/php) - Idio Techie (idiotechie.com/category/php/) - David Carr (www.daveismyname.com) - PHP: The Right Way (www.phptherightway.com)
  5. References (cont) - PHPPot (phppot.com) - PHP CMS Framework (phpcmsframework.blogspot.in)

    - PHP Classes (www.phpclasses.org) - Code Tools (codetools.net) - PHP Result (phpresult.com)
  6. References - Youtube - JREAM (bit.ly/17dGSm3) - Aman Virk (bit.ly/141XDMT)

    - Pineheadtv (bit.ly/17aRZzc) - PHP - Tutorials (bit.ly/15WKgSf) - PHP Image Processing Tutorial (bit.ly/15WHaxx) - Dotinstall (bit.ly/19meYok) - Codecademy PHP Track (bit.ly/1ihrmrQ)
  7. Library

  8. Eden - eden.openovate.com

  9. PHP Login Script - www.php-login.net

  10. Cartalyst Sentry - www.cartalyst.com

  11. Medoo - medoo.in

  12. Ratchet - socketo.me

  13. Library - Awesome PHP Libraries (bit.ly/17tIPef) - Fvalidate (bit.ly/14wNeMS) -

    password_compat (bit.ly/1lajxbv) - Super Simple Registration (bit.ly/1gUUdRS) - Simple Authentication and Security Layer (bit.ly/14wNOdF) - Access user Class (bit.ly/1dgK3O9) - .passport Client (bit.ly/16C2GmX) - .passport Server (bit.ly/1dgL5tk) - Idiorm & Paris (j4mie.github.io/idiormandparis) - PDO_MySQLi (bit.ly/17x4dLD) - RedBeanPHP (www.redbeanphp.com) - Propel ORM (propelorm.org) - Rapid Form Builder (bit.ly/19H8wIj)
  14. Library (cont) - Opauth (opauth.org) - URL Router Class (bit.ly/17XrM24)

    - Pear (pear.php.net) - Captcha: KCaptcha (www.captcha.ru/en) - PDF: mPDF (www.mpdf1.com/mpdf) - File Manager: elFinder (elfinder.org) - Rss: SimplePie (www.simplepie.org) - Chart: pChart (www.pchart.net) + jpChart (jpgraph.net) - phpThumb (phpthumb.sourceforge.net) - Code Generator: jqmphp (www.jqmphp.com) - Detector (detector.dmolsen.com) - DB Management: Adminer (www.adminer.org)
  15. Framework

  16. Phalcon - phalconphp.com

  17. Slim Framework - www.slimframework.com

  18. Simple MVC Framework - simplemvcframework.com

  19. Guzzle - guzzlephp.org

  20. Codeception - codeception.com

  21. Optimization

  22. References - Google Developers (bit.ly/1bYoVvf) - Nettuts+ (bit.ly/18F1zHi) - Saiful

    Islam (bit.ly/15T2WQd) - Clay (bit.ly/1bYmSYd) - MD Pro (bit.ly/14UfGJG) - Chazzuka (bit.ly/16m3IoQ)
  23. Profiling

  24. References - PHP Error (phperror.net) - PHP DebugBar (phpdebugbar.com) -

    forp PHP profiler (bit.ly/18be66O)
  25. whoops - filp.github.io/whoops

  26. Outline - Lab 01: Using microtime() - Lab 02: Using

    APD (Advanced PHP debugger) - Lab 03: Using XDebug
  27. References - Simplest way (bit.ly/11lodT2) - APD-Advanced PHP Debugger (bit.ly/15mwKFZ,

    bit.ly/1aOwnGe) - WinCacheGrind (bit.ly/1bYnYmR) - WebGrind (bit.ly/11lo9Tl) - Quang (VN) (bit.ly/176Uc8g)
  28. Lab 01 Using microtime()

  29. Task 1: Enter code - Enter code: https://gist.github.com/leonguyen/6097052

  30. Task 2: Run - Goto http://localhost/phplab/microtime.php.

  31. Lab 02 Using APD

  32. Task 1: Donwload php_apd.dll - Goto: bit.ly/1c11scV and download php_apd.dll

    to '<web- server>\php\ext' folder.
  33. Task 2: Config php.ini - Open 'php.ini' file and enter

    code: https://gist.github. com/leonguyen/6097199.
  34. Task 3: Check phpinfo()

  35. Task 4: Program - Enter code: https://gist.github.com/leonguyen/6097246.

  36. Task 5: Run - Goto http://localhost/phplab/apd.php.

  37. Task 6: Profiling - Open folder 'tmp' folder to view

    profiling files.
  38. Lab 03 Using XDebug

  39. Task 1: Config php.ini - Open 'php.ini' file and enter

    code.
  40. Task 2: Check phpinfo()

  41. Task 3: Program - Enter code: https://gist.github.com/leonguyen/6097335.

  42. Task 4: Run - Goto http://localhost/phplab/xdebug.php?XDEBUG_PROFILE=true.

  43. Task 5: Profiling files - Open folder 'tmp' folder to

    view profiling files.
  44. Task 6: Profiling with WinCacheGrind - Goto and download http://sourceforge.net/projects/wincachegrind/.

  45. Task 7: Using WinCacheGrind - Open folder 'tmp' folder to

    view profiling files.
  46. Task 8: Profiling with WebGrind - Goto and download https://github.com/jokkedk/webgrind.

  47. Task 9: Using WebGrind - Goto http://localhost/webgrind/.

  48. Performance

  49. References - PHP Performance Crash Course (bit.ly/1cU1RQ4, bit.ly/1aST9jr) - Performance

    Tips (bit.ly/12Sx7Fh) - Cache Performance Comparison (bit.ly/1bu5gUW) - Cache it! (bit.ly/1bu5zz2) - W3 Total Cache (bit.ly/1bu5Z8l) - Cache with CI (bit.ly/16m79Mk) - Memcached with PHP (bit.ly/GAiNwQ) - Memcache with CI (bit.ly/13NOpqa, bit.ly/16aYDls, bit.ly/176TMyA) - Background jobs with php and resque (bit.ly/1aE4GwW) - Easy Wins For More Performant PHP (bit.ly/1aEAJwN) - Quang (VN) (bit.ly/12rQev1)
  50. phpFastCache - phpFastCache (www.phpfastcache.com)

  51. Security

  52. References - SQL Injection (bit.ly/1gRqxVZ)