SlideShare a Scribd company logo
LINT
                                       PHP & JavaScript Code Checkers




Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
History of Lint

                 • Bell Labs, Late 1970s
                 • First public appearance Unix V7 (1979)
                 • Written for C language
                 • Named for bits of crud in sheeps’ wool

Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
Static Code Analysis

                 • Analyzes code without executing it
                 • Detects syntax errors (missing semicolons,
                        missing curly braces)
                 • Detects some bugs & unsafe code

Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
PHP -l

                 • PHP’s built-in Lint tool
                 • Command-line tool
                 • php -l somefile.php
                 • Same code PHP uses to parse code at
                        runtime


Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
PHPLint
                 • http://www.icosaedro.it/phplint/
                 • Windows & Unix




Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
PHPLint On-Line

                 •      http://www.icosaedro.it/phplint/phplint-on-line.html

                 • Only checks one file at a time
                 • Can’t check dependencies


Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
PHPLint On-Line




Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
JSLint by Doug Crockford
                 • JavaScript Lint tool
                 • jslint.com
                 • “Warning: JSLint will hurt your feelings”
                 • Detects really obscure JavaScript errors
                 • See “JavaScript: The Good Parts”
                        http://www.youtube.com/watch?
                        v=hQVTIJBZook

Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
Not Psychic

                 • Lint tools wont find every error
                 • They’ll find technical errors
                 • You’re on your own for logical errors

Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
Any Questions?

        Dave Ross
        PHP & Javascript developer
        WordPress plugin developer
        http://daveross.tel
        http://davidmichaelross.com


Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009

More Related Content

Similar to Lint - PHP & Javascript Code Checking (20)

PDF
Continuous Integration In Php
Wilco Jansen
 
PDF
Intro to Micro-frameworks
jsmith92
 
PDF
Tool up your lamp stack
AgileOnTheBeach
 
PDF
Tool Up Your LAMP Stack
Lorna Mitchell
 
PDF
Taming the Deployment Beast
Chris Cornutt
 
PPTX
PHP Development Tools 2.0 - Success Story
Michael Spector
 
KEY
Continuous Integration Step-by-step
Michelangelo van Dam
 
PDF
How to write PHPT tests
Scott MacVicar
 
PDF
Introduction to symfony2
Pablo Godel
 
PPTX
PHP And Silverlight - DevDays session
Maarten Balliauw
 
PDF
"Building Modern PHP Applications" - Jackson Murtha, South Dakota Code Camp 2012
Blend Interactive
 
ODP
PHPNW Test Fest Pre-presentation
Lorna Mitchell
 
PDF
Perl Critic In Depth
Jeffrey Ryan Thalhammer
 
PDF
M is for modernization
Red Pill Now
 
PDF
Organizing Your PHP Projects (2010 ConFoo)
Paul Jones
 
PDF
Organinzing Your PHP Projects (2010 Memphis PHP)
Paul Jones
 
PDF
[:web | side] https://webside.app by guille amaral
ESUG
 
PDF
Web_Development_Using_PHP.pdf
AdityaSingh281706
 
PPTX
Week 5
A VD
 
PDF
Joomla Code Quality Control and Automation Testing
Shyam Sunder Verma
 
Continuous Integration In Php
Wilco Jansen
 
Intro to Micro-frameworks
jsmith92
 
Tool up your lamp stack
AgileOnTheBeach
 
Tool Up Your LAMP Stack
Lorna Mitchell
 
Taming the Deployment Beast
Chris Cornutt
 
PHP Development Tools 2.0 - Success Story
Michael Spector
 
Continuous Integration Step-by-step
Michelangelo van Dam
 
How to write PHPT tests
Scott MacVicar
 
Introduction to symfony2
Pablo Godel
 
PHP And Silverlight - DevDays session
Maarten Balliauw
 
"Building Modern PHP Applications" - Jackson Murtha, South Dakota Code Camp 2012
Blend Interactive
 
PHPNW Test Fest Pre-presentation
Lorna Mitchell
 
Perl Critic In Depth
Jeffrey Ryan Thalhammer
 
M is for modernization
Red Pill Now
 
Organizing Your PHP Projects (2010 ConFoo)
Paul Jones
 
Organinzing Your PHP Projects (2010 Memphis PHP)
Paul Jones
 
[:web | side] https://webside.app by guille amaral
ESUG
 
Web_Development_Using_PHP.pdf
AdityaSingh281706
 
Week 5
A VD
 
Joomla Code Quality Control and Automation Testing
Shyam Sunder Verma
 

More from Dave Ross (20)

KEY
Stylesheets of the future with Sass and Compass
Dave Ross
 
KEY
HTML5 History & Features
Dave Ross
 
PPT
A geek's guide to getting hired
Dave Ross
 
KEY
NoSQL & MongoDB
Dave Ross
 
PDF
Date and Time programming in PHP & Javascript
Dave Ross
 
KEY
Simulated Eye Tracking with Attention Wizard
Dave Ross
 
KEY
What's new in HTML5?
Dave Ross
 
KEY
The Canvas Tag
Dave Ross
 
KEY
Wordpress
Dave Ross
 
PPT
Lamp Stack Optimization
Dave Ross
 
PPT
The FPDF Library
Dave Ross
 
PPT
FirePHP
Dave Ross
 
PPT
Bayesian Inference using b8
Dave Ross
 
PPT
SQL Injection in PHP
Dave Ross
 
KEY
Web App Security: XSS and CSRF
Dave Ross
 
KEY
Balsamiq Mockups
Dave Ross
 
KEY
LAMP Optimization
Dave Ross
 
KEY
Cufon - Javascript Font Replacement
Dave Ross
 
KEY
PHP Output Buffering
Dave Ross
 
ODP
Profiling PHP & Javascript
Dave Ross
 
Stylesheets of the future with Sass and Compass
Dave Ross
 
HTML5 History & Features
Dave Ross
 
A geek's guide to getting hired
Dave Ross
 
NoSQL & MongoDB
Dave Ross
 
Date and Time programming in PHP & Javascript
Dave Ross
 
Simulated Eye Tracking with Attention Wizard
Dave Ross
 
What's new in HTML5?
Dave Ross
 
The Canvas Tag
Dave Ross
 
Wordpress
Dave Ross
 
Lamp Stack Optimization
Dave Ross
 
The FPDF Library
Dave Ross
 
FirePHP
Dave Ross
 
Bayesian Inference using b8
Dave Ross
 
SQL Injection in PHP
Dave Ross
 
Web App Security: XSS and CSRF
Dave Ross
 
Balsamiq Mockups
Dave Ross
 
LAMP Optimization
Dave Ross
 
Cufon - Javascript Font Replacement
Dave Ross
 
PHP Output Buffering
Dave Ross
 
Profiling PHP & Javascript
Dave Ross
 
Ad

Recently uploaded (20)

PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PDF
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
PDF
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PPTX
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PPTX
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PPTX
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
PDF
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
What Makes Contify’s News API Stand Out: Key Features at a Glance
Contify
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
CIFDAQ Market Insights for July 7th 2025
CIFDAQ
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
POV_ Why Enterprises Need to Find Value in ZERO.pdf
darshakparmar
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
The Project Compass - GDG on Campus MSIT
dscmsitkol
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
From Sci-Fi to Reality: Exploring AI Evolution
Svetlana Meissner
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
"Autonomy of LLM Agents: Current State and Future Prospects", Oles` Petriv
Fwdays
 
“NPU IP Hardware Shaped Through Software and Use-case Analysis,” a Presentati...
Edge AI and Vision Alliance
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
Ad

Lint - PHP & Javascript Code Checking

  • 1. LINT PHP & JavaScript Code Checkers Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 2. History of Lint • Bell Labs, Late 1970s • First public appearance Unix V7 (1979) • Written for C language • Named for bits of crud in sheeps’ wool Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 3. Static Code Analysis • Analyzes code without executing it • Detects syntax errors (missing semicolons, missing curly braces) • Detects some bugs & unsafe code Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 4. PHP -l • PHP’s built-in Lint tool • Command-line tool • php -l somefile.php • Same code PHP uses to parse code at runtime Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 5. PHPLint • http://www.icosaedro.it/phplint/ • Windows & Unix Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 6. PHPLint On-Line • http://www.icosaedro.it/phplint/phplint-on-line.html • Only checks one file at a time • Can’t check dependencies Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 7. PHPLint On-Line Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 8. JSLint by Doug Crockford • JavaScript Lint tool • jslint.com • “Warning: JSLint will hurt your feelings” • Detects really obscure JavaScript errors • See “JavaScript: The Good Parts” http://www.youtube.com/watch? v=hQVTIJBZook Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 9. Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 10. Not Psychic • Lint tools wont find every error • They’ll find technical errors • You’re on your own for logical errors Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009
  • 11. Any Questions? Dave Ross PHP & Javascript developer WordPress plugin developer http://daveross.tel http://davidmichaelross.com Lint :: Dave Ross :: Suburban Chicago PHP & Web Design Meetup :: suburbanchicagophp.org :: Sept 3, 2009