SlideShare ist ein Scribd-Unternehmen logo
1 von 11
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

Weitere ähnliche Inhalte

Ähnlich wie Lint - PHP & Javascript Code Checking

Cufon - Javascript Font Replacement
Cufon - Javascript Font ReplacementCufon - Javascript Font Replacement
Cufon - Javascript Font Replacement
Dave Ross
 
LAMP Optimization
LAMP OptimizationLAMP Optimization
LAMP Optimization
Dave Ross
 
Profiling PHP & Javascript
Profiling PHP & JavascriptProfiling PHP & Javascript
Profiling PHP & Javascript
Dave Ross
 
PHP Output Buffering
PHP Output BufferingPHP Output Buffering
PHP Output Buffering
Dave Ross
 
EOLE / OWF 12 - The affero gp lv3. why it exists and who it's for - bradley m...
EOLE / OWF 12 - The affero gp lv3. why it exists and who it's for - bradley m...EOLE / OWF 12 - The affero gp lv3. why it exists and who it's for - bradley m...
EOLE / OWF 12 - The affero gp lv3. why it exists and who it's for - bradley m...
Paris Open Source Summit
 
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Gabriel Villa
 

Ähnlich wie Lint - PHP & Javascript Code Checking (20)

Cufon - Javascript Font Replacement
Cufon - Javascript Font ReplacementCufon - Javascript Font Replacement
Cufon - Javascript Font Replacement
 
LAMP Optimization
LAMP OptimizationLAMP Optimization
LAMP Optimization
 
.NET Core, ASP.NET Core e .NET Standard 2
.NET Core, ASP.NET Core e .NET Standard 2.NET Core, ASP.NET Core e .NET Standard 2
.NET Core, ASP.NET Core e .NET Standard 2
 
Hanami
HanamiHanami
Hanami
 
Profiling PHP & Javascript
Profiling PHP & JavascriptProfiling PHP & Javascript
Profiling PHP & Javascript
 
COSCUP 2016 - ROS + Gazebo機器人模擬器工作坊
COSCUP 2016 - ROS + Gazebo機器人模擬器工作坊COSCUP 2016 - ROS + Gazebo機器人模擬器工作坊
COSCUP 2016 - ROS + Gazebo機器人模擬器工作坊
 
Invalidating copyright infringement claims
Invalidating copyright infringement claims Invalidating copyright infringement claims
Invalidating copyright infringement claims
 
PHP Output Buffering
PHP Output BufferingPHP Output Buffering
PHP Output Buffering
 
The new era of PHP web development.
The new era of PHP web development.The new era of PHP web development.
The new era of PHP web development.
 
O Futuro do C#: C#8
O Futuro do C#: C#8O Futuro do C#: C#8
O Futuro do C#: C#8
 
IronRuby for the .NET Developer
IronRuby for the .NET DeveloperIronRuby for the .NET Developer
IronRuby for the .NET Developer
 
Conferences andcommunity
Conferences andcommunityConferences andcommunity
Conferences andcommunity
 
GDSC NYCU | 如何建立自己的開源專案
 GDSC NYCU | 如何建立自己的開源專案 GDSC NYCU | 如何建立自己的開源專案
GDSC NYCU | 如何建立自己的開源專案
 
Rpi
RpiRpi
Rpi
 
EOLE / OWF 12 - The affero gp lv3. why it exists and who it's for - bradley m...
EOLE / OWF 12 - The affero gp lv3. why it exists and who it's for - bradley m...EOLE / OWF 12 - The affero gp lv3. why it exists and who it's for - bradley m...
EOLE / OWF 12 - The affero gp lv3. why it exists and who it's for - bradley m...
 
Web APIs: The future of software
Web APIs: The future of softwareWeb APIs: The future of software
Web APIs: The future of software
 
Week01 jan19
Week01 jan19Week01 jan19
Week01 jan19
 
Linq (from the inside)
Linq (from the inside)Linq (from the inside)
Linq (from the inside)
 
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
Develop a Quick and Dirty Web interface to your database: for the DBA and oth...
 
TypePad Platform FOWA London 2009
TypePad Platform FOWA London 2009TypePad Platform FOWA London 2009
TypePad Platform FOWA London 2009
 

Mehr von Dave Ross

Stylesheets of the future with Sass and Compass
Stylesheets of the future with Sass and CompassStylesheets of the future with Sass and Compass
Stylesheets of the future with Sass and Compass
Dave Ross
 
Date and Time programming in PHP & Javascript
Date and Time programming in PHP & JavascriptDate and Time programming in PHP & Javascript
Date and Time programming in PHP & Javascript
Dave Ross
 
Web App Security: XSS and CSRF
Web App Security: XSS and CSRFWeb App Security: XSS and CSRF
Web App Security: XSS and CSRF
Dave Ross
 

Mehr von Dave Ross (20)

Stylesheets of the future with Sass and Compass
Stylesheets of the future with Sass and CompassStylesheets of the future with Sass and Compass
Stylesheets of the future with Sass and Compass
 
HTML5 History & Features
HTML5 History & FeaturesHTML5 History & Features
HTML5 History & Features
 
A geek's guide to getting hired
A geek's guide to getting hiredA geek's guide to getting hired
A geek's guide to getting hired
 
NoSQL & MongoDB
NoSQL & MongoDBNoSQL & MongoDB
NoSQL & MongoDB
 
Date and Time programming in PHP & Javascript
Date and Time programming in PHP & JavascriptDate and Time programming in PHP & Javascript
Date and Time programming in PHP & Javascript
 
Simulated Eye Tracking with Attention Wizard
Simulated Eye Tracking with Attention WizardSimulated Eye Tracking with Attention Wizard
Simulated Eye Tracking with Attention Wizard
 
What's new in HTML5?
What's new in HTML5?What's new in HTML5?
What's new in HTML5?
 
The Canvas Tag
The Canvas TagThe Canvas Tag
The Canvas Tag
 
Wordpress
WordpressWordpress
Wordpress
 
Lamp Stack Optimization
Lamp Stack OptimizationLamp Stack Optimization
Lamp Stack Optimization
 
The FPDF Library
The FPDF LibraryThe FPDF Library
The FPDF Library
 
FirePHP
FirePHPFirePHP
FirePHP
 
Bayesian Inference using b8
Bayesian Inference using b8Bayesian Inference using b8
Bayesian Inference using b8
 
SQL Injection in PHP
SQL Injection in PHPSQL Injection in PHP
SQL Injection in PHP
 
Web App Security: XSS and CSRF
Web App Security: XSS and CSRFWeb App Security: XSS and CSRF
Web App Security: XSS and CSRF
 
Google Maps API
Google Maps APIGoogle Maps API
Google Maps API
 
Everything You Need to Know in Order to Start Using jQuery
Everything You Need to Know in Order to Start Using jQueryEverything You Need to Know in Order to Start Using jQuery
Everything You Need to Know in Order to Start Using jQuery
 
Subversion
SubversionSubversion
Subversion
 
PHPUnit Automated Unit Testing Framework
PHPUnit Automated Unit Testing FrameworkPHPUnit Automated Unit Testing Framework
PHPUnit Automated Unit Testing Framework
 
Apache mod_rewrite
Apache mod_rewriteApache mod_rewrite
Apache mod_rewrite
 

Kürzlich hochgeladen

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Kürzlich hochgeladen (20)

presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 

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