Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Perl
Perl

1.4K
579
+ 1
472
PHP
PHP

70.3K
25.3K
+ 1
4.3K
Add tool

Perl vs PHP: What are the differences?

What is Perl? Highly capable, feature-rich programming language with over 26 years of development. Perl is a general-purpose programming language originally developed for text manipulation and now used for a wide range of tasks including system administration, web development, network programming, GUI development, and more.

What is PHP? A popular general-purpose scripting language that is especially suited to web development. Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.

Perl and PHP can be primarily classified as "Languages" tools.

"Lots of libraries", "Open source" and "Text processing" are the key factors why developers consider Perl; whereas "Large community", "Open source" and "Easy deployment" are the primary reasons why PHP is favored.

Perl and PHP are both open source tools. PHP with 23.9K GitHub stars and 5.53K forks on GitHub appears to be more popular than Perl with 435 GitHub stars and 152 GitHub forks.

9GAG, Hootsuite, and 37 Signals are some of the popular companies that use PHP, whereas Perl is used by Tilt, DuckDuckGo, and Twilio SendGrid. PHP has a broader approval, being mentioned in 8904 company stacks & 2933 developers stacks; compared to Perl, which is listed in 133 company stacks and 64 developer stacks.

What is Perl?

Perl is a general-purpose programming language originally developed for text manipulation and now used for a wide range of tasks including system administration, web development, network programming, GUI development, and more.

What is PHP?

Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world.
Get Advice Icon

Need advice about which tool to choose?Ask the StackShare community!

Why do developers choose Perl?
Why do developers choose PHP?

Sign up to add, upvote and see more prosMake informed product decisions

Sign up to add, upvote and see more consMake informed product decisions

What companies use Perl?
What companies use PHP?

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Perl?
What tools integrate with PHP?

Sign up to get full access to all the tool integrationsMake informed product decisions

What are some alternatives to Perl and PHP?
Ruby
Ruby is a language of careful balance. Its creator, Yukihiro “Matz” Matsumoto, blended parts of his favorite languages (Perl, Smalltalk, Eiffel, Ada, and Lisp) to form a new language that balanced functional programming with imperative programming.
C
Java
Java is a programming language and computing platform first released by Sun Microsystems in 1995. There are lots of applications and websites that will not work unless you have Java installed, and more are created every day. Java is fast, secure, and reliable. From laptops to datacenters, game consoles to scientific supercomputers, cell phones to the Internet, Java is everywhere!
Python
Python is a general purpose programming language created by Guido Van Rossum. Python is most praised for its elegant syntax and readable code, if you are just beginning your programming career python suits you best.
PowerShell
A command-line shell and scripting language built on .NET. Helps system administrators and power-users rapidly automate tasks that manage operating systems (Linux, macOS, and Windows) and processes.
See all alternatives
Decisions about Perl and PHP
Seth Ammons
Seth Ammons
Principal Software Developer at SendGrid · | 10 upvotes · 24K views
atTwilio SendGridTwilio SendGrid
Go
Go
Docker
Docker
Perl
Perl
#CodeCollaborationVersionControl
#ContinuousIntegration

In addition to our fancy Docker setup, we have captured and sanitized production logs for the behavior of our legacy Perl MTA, and we can test that the log output from the new Go version behaves the same way as the old version. These tests are set up to allow us to switch between the legacy and new version of the MTA and ensure that both systems behave in a legacy-compatible way. Not only can we ensure that we operate against a variety of issues we've seen over time from inboxes, but we know that the newest version of our MTA continues to cover all the same expected behaviors of the legacy version. #CodeCollaborationVersionControl #ContinuousIntegration

See more
Sqreen
Sqreen
Node.js
Node.js
Ruby
Ruby
Python
Python
Java
Java
PHP
PHP
Go
Go
Slack
Slack
PagerDuty
PagerDuty

I chose Sqreen because it provides an out-of-the-box Security as a Service solution to protect my customer data. I get full visibility over my application security in real-time and I reduce my risk against the most common threats. My customers are happy and I don't need to spend any engineering resources or time on this. We're only alerted when our attention is required and the data that is provided helps engineering teams easily remediate vulnerabilities. The platform grows with us and will allow us to have all the right tools in place when our first security engineer joins the company. Advanced security protections against business logic threats can then be implemented.

Installation was super easy on my Node.js and Ruby apps. But Sqreen also supports Python , Java , PHP and soon Go .

It integrates well with the tools I'm using every day Slack , PagerDuty and more.

See more
Sparker73
Sparker73
Frontend Developer · | 8 upvotes · 23.2K views
Node.js
Node.js
JavaScript
JavaScript
.NET
.NET
PHP
PHP

Node.js is my choice because it uses very few resources to run and it is capable to handle tons of connections simultaneously. Most developers already know JavaScript, the evolution of ECMAScript is immediately reflected to Node.js and all you have to do is update your Server's Node.js version without time and effort. Thousands of improvements that makes it very powerful especially in asynchronous programming. The web is full of courses, dev communities, free sample code, plunkers and many knowledge sources on Node.js that facilitates the learning curve. What else we can ask from a legendary language that is still evolving? I am learning Node.js by developing a simple REST WebAPI and using it as a playground to test situations in which the main objective is to challenge Node.js and compare results and performance with .NET implementations and certain well known fast PHP implementations. Until now the results are astonishing. Summarizing: Node.js for backend is so far (in my opinion) the most recommended solution to get positive achievements in size, speed, power, concurrency, scalability, deployment and running costs.

See more
Antonio Sanchez
Antonio Sanchez
CEO at Kokoen GmbH · | 14 upvotes · 275.4K views
atKokoen GmbHKokoen GmbH
PHP
PHP
Laravel
Laravel
MySQL
MySQL
Go
Go
MongoDB
MongoDB
JavaScript
JavaScript
Node.js
Node.js
ExpressJS
ExpressJS

Back at the start of 2017, we decided to create a web-based tool for the SEO OnPage analysis of our clients' websites. We had over 2.000 websites to analyze, so we had to perform thousands of requests to get every single page from those websites, process the information and save the big amounts of data somewhere.

Very soon we realized that the initial chosen script language and database, PHP, Laravel and MySQL, was not going to be able to cope efficiently with such a task.

By that time, we were doing some experiments for other projects with a language we had recently get to know, Go , so we decided to get a try and code the crawler using it. It was fantastic, we could process much more data with way less CPU power and in less time. By using the concurrency abilites that the language has to offers, we could also do more Http requests in less time.

Unfortunately, I have no comparison numbers to show about the performance differences between Go and PHP since the difference was so clear from the beginning and that we didn't feel the need to do further comparison tests nor document it. We just switched fully to Go.

There was still a problem: despite the big amount of Data we were generating, MySQL was performing very well, but as we were adding more and more features to the software and with those features more and more different type of data to save, it was a nightmare for the database architects to structure everything correctly on the database, so it was clear what we had to do next: switch to a NoSQL database. So we switched to MongoDB, and it was also fantastic: we were expending almost zero time in thinking how to structure the Database and the performance also seemed to be better, but again, I have no comparison numbers to show due to the lack of time.

We also decided to switch the website from PHP and Laravel to JavaScript and Node.js and ExpressJS since working with the JSON Data that we were saving now in the Database would be easier.

As of now, we don't only use the tool intern but we also opened it for everyone to use for free: https://tool-seo.com

See more
Gev Balyan
Gev Balyan
Founder at UCRAFT · | 4 upvotes · 26.1K views
atUCRAFTUCRAFT
Laravel
Laravel
JavaScript
JavaScript
Ember.js
Ember.js
Composer
Composer
MySQL
MySQL
PHP
PHP

We recently decided to rewrite Ucraft's Laravel from scratch.

The goal is to make everything more Laravel friendly that will speak to frontend JavaScript , built on Ember.js via JSON Patch standard. This will also make out app better extendible and overridable.

The namespeaces are going to be more correct and the app itself will be compatible with Composer packages.

This also improves the connection between MySQL and PHP making the reoccurring MySQL queries cached during the lifecycle.

See more
Ajit Parthan
Ajit Parthan
CTO at Shaw Academy · | 3 upvotes · 6.1K views
atShaw AcademyShaw Academy
PHP
PHP
Python
Python
#Etl

Multiple systems means there is a requirement to cart data across them.

Started off with Talend scripts. This was great as what we initially had were PHP/Python script - allowed for a more systematic approach to ETL.

But ended up with a massive repository of scripts, complex crontab entries and regular failures due to memory issues.

Using Stitch or similar services is a better approach: - no need to worry about the infrastructure needed for the ETL processes - a more formal mapping of data from source to destination as opposed to script developer doing his/her voodoo magic - lot of common sources and destination integrations are already builtin and out of the box

etl @{etlasaservice}|topic:1323|

See more
Visual Studio Code
Visual Studio Code
GitHub
GitHub
Linux
Linux
JavaScript
JavaScript
Swift
Swift
Java
Java
PHP
PHP
Python
Python
XML
XML
JSON
JSON
Git
Git
SVN (Subversion)
SVN (Subversion)

I use Visual Studio Code because at this time is a mature software and I can do practically everything using it.

  • It's free and open source: The project is hosted on GitHub and it’s free to download, fork, modify and contribute to the project.

  • Multi-platform: You can download binaries for different platforms, included Windows (x64), MacOS and Linux (.rpm and .deb packages)

  • LightWeight: It runs smoothly in different devices. It has an average memory and CPU usage. Starts almost immediately and it’s very stable.

  • Extended language support: Supports by default the majority of the most used languages and syntax like JavaScript, HTML, C#, Swift, Java, PHP, Python and others. Also, VS Code supports different file types associated to projects like .ini, .properties, XML and JSON files.

  • Integrated tools: Includes an integrated terminal, debugger, problem list and console output inspector. The project navigator sidebar is simple and powerful: you can manage your files and folders with ease. The command palette helps you find commands by text. The search widget has a powerful auto-complete feature to search and find your files.

  • Extensible and configurable: There are many extensions available for every language supported, including syntax highlighters, IntelliSense and code completion, and debuggers. There are also extension to manage application configuration and architecture like Docker and Jenkins.

  • Integrated with Git: You can visually manage your project repositories, pull, commit and push your changes, and easy conflict resolution.( there is support for SVN (Subversion) users by plugin)

See more
Ajit Parthan
Ajit Parthan
CTO at Shaw Academy · | 1 upvotes · 4.8K views
atShaw AcademyShaw Academy
PHP
PHP
Python
Python

Multiple systems means there is a requirement to cart data across them.

Started off with Talend scripts. This was great as what we initially had were PHP/Python script - allowed for a more systematic approach to ETL.

But ended up with a massive repository of scripts, complex crontab entries and regular failures due to memory issues.

Using Stitch or similar services is a better approach: - no need to worry about the infrastructure needed for the ETL processes - a more formal mapping of data from source to destination as opposed to script developer doing his/her voodoo magic - lot of common sources and destination integrations are already builtin and out of the box

See more
Epistol
Epistol
Laravel
Laravel
PhpStorm
PhpStorm
Google Analytics
Google Analytics
Sass
Sass
HTML5
HTML5
JavaScript
JavaScript
Vue.js
Vue.js
Webpack
Webpack
Buddy
Buddy
nginx
nginx
Ubuntu
Ubuntu
GitHub
GitHub
Git
Git
Deployer
Deployer
CloudFlare
CloudFlare
Let's Encrypt
Let's Encrypt
Stripe
Stripe
Asana
Asana
Bulma
Bulma
PHP
PHP
#CDG
CDG

I use Laravel because it's the most advances PHP framework out there, easy to maintain, easy to upgrade and most of all : easy to get a handle on, and to follow every new technology ! PhpStorm is our main software to code, as of simplicity and full range of tools for a modern application.

Google Analytics Analytics of course for a tailored analytics, Bulma as an innovative CSS framework, coupled with our Sass (Scss) pre-processor.

As of more basic stuff, we use HTML5, JavaScript (but with Vue.js too) and Webpack to handle the generation of all this.

To deploy, we set up Buddy to easily send the updates on our nginx / Ubuntu server, where it will connect to our GitHub Git private repository, pull and do all the operations needed with Deployer .

CloudFlare ensure the rapidity of distribution of our content, and Let's Encrypt the https certificate that is more than necessary when we'll want to sell some products with our Stripe api calls.

Asana is here to let us list all the functionalities, possibilities and ideas we want to implement.

See more
Lidiexy Alonso
Lidiexy Alonso
Senior Software Engineer at Palinode LLC · | 6 upvotes · 10.9K views
React Native
React Native
PhpStorm
PhpStorm
PHP
PHP
Visual Studio Code
Visual Studio Code
JavaScript
JavaScript
#IDE

As developer at Applied Health Analytics we decided to create a React Native App. In terms of #IDE I'm a good fan of PhpStorm cause we have a lost of PHP in the backend, but I definitely gave a try to Visual Studio Code and now is my primary JavaScript #IDE. I was impress how fast VS Code has become the No.1 @JavaScript Editor in the community.

See more
Tom Klein
Tom Klein
CEO at Gentlent · | 4 upvotes · 47K views
atGentlentGentlent
JavaScript
JavaScript
Node.js
Node.js
PHP
PHP
HTML5
HTML5
Sass
Sass
nginx
nginx
React
React
PostgreSQL
PostgreSQL
Ubuntu
Ubuntu
ES6
ES6
TypeScript
TypeScript
Google Compute Engine
Google Compute Engine
Socket.IO
Socket.IO
Electron
Electron
Python
Python

Our most used programming languages are JavaScript / Node.js for it's lightweight and fast use, PHP because everyone knows it, HTML5 because you can't live without it and Sass to write great CSS. Occasionally, we use nginx as a web server and proxy, React for our UX, PostgreSQL as fast relational database, Ubuntu as server OS, ES6 and TypeScript for Node, Google Compute Engine for our infrastructure, and Socket.IO and Electron for specific use cases. We also use Python for some of our backends.

See more
Labinator Team
Labinator Team
at Labinator · | 13 upvotes · 194.7K views
atLabinatorLabinator
HTML5
HTML5
CSS 3
CSS 3
Sass
Sass
Vanilla.JS
Vanilla.JS
PHP
PHP
WordPress
WordPress
Sublime Text
Sublime Text
Visual Studio Code
Visual Studio Code
Manjaro
Manjaro
Debian
Debian

At labinator.com, we use HTML5, CSS 3, Sass, Vanilla.JS and PHP when building our premium WordPress themes and plugins. When writing our codes, we use Sublime Text and Visual Studio Code depending on the project. We run Manjaro and Debian operating systems in our office. Manjaro is a great desktop operating system for all range of tasks while Debian is a solid choice for servers.

WordPress became a very popular choice when it comes to content management systems and building websites. It is easy to learn and has a great community behind it. The high number of plugins as well that are available for WordPress allows any user to customize it depending on his/her needs.

For development, HTML5 with Sass is our go-to choice when building our themes.

Main Advantages Of Sass:

  • It's CSS syntax friendly
  • It offers variables
  • It uses a nested syntax
  • It includes mixins
  • Great community and online support.
  • Great documentation that is easy to read and follow.

As for PHP, we always thrive to use PHP 7.3+. After the introduction of PHP 7, the WordPress development process became more stable and reliable than before. If you a developer considering PHP 7.3+ for your project, it would be good to note the following benefits.

The Benefits Of Using PHP:

  • Open Source.
  • Highly Extendible.
  • Easy to learn and read.
  • Platform independent.
  • Compatible with APACHE.
  • Low development and maintenance cost.
  • Great community and support.
  • Detailed documentation that has everything you need!

Why PHP 7.3+?

  • Flexible Heredoc & Nowdoc Syntaxes - Two key methods for defining strings within PHP. They also became easier to read and more reliable.
  • A good boost in performance speed which is extremely important when it comes to WordPress development.
See more
Tassanai Singprom
Tassanai Singprom
JavaScript
JavaScript
PHP
PHP
HTML5
HTML5
jQuery
jQuery
Redis
Redis