Get Advice Icon

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

PHP
PHP

70.6K
25.5K
+ 1
4.3K
Python
Python

52.1K
44.9K
+ 1
6K
Add tool

PHP vs Python: What are the differences?

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.

What is Python? A clear and powerful object-oriented programming language, comparable to Perl, Ruby, Scheme, or Java. 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.

PHP and Python belong to "Languages" category of the tech stack.

"Large community", "Open source" and "Easy deployment" are the key factors why developers consider PHP; whereas "Great libraries", "Readable code" and "Beautiful code" are the primary reasons why Python is favored.

PHP and Python are both open source tools. Python with 25K GitHub stars and 10.3K forks on GitHub appears to be more popular than PHP with 23.7K GitHub stars and 5.5K GitHub forks.

According to the StackShare community, PHP has a broader approval, being mentioned in 8868 company stacks & 2867 developers stacks; compared to Python, which is listed in 2789 company stacks and 3503 developer stacks.

What is PHP?

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

What is 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.
Get Advice Icon

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

Why do developers choose PHP?
Why do developers choose Python?

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 PHP?
What companies use Python?

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

What tools integrate with PHP?
What tools integrate with Python?

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

What are some alternatives to PHP and Python?
JavaScript
JavaScript is most known as the scripting language for Web pages, but used in many non-browser environments as well such as node.js or Apache CouchDB. It is a prototype-based, multi-paradigm scripting language that is dynamic,and supports object-oriented, imperative, and functional programming styles.
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!
HTML5
HTML5 is a core technology markup language of the Internet used for structuring and presenting content for the World Wide Web. As of October 2014 this is the final and complete fifth revision of the HTML standard of the World Wide Web Consortium (W3C). The previous version, HTML 4, was standardised in 1997.
Node.js
Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient, perfect for data-intensive real-time applications that run across distributed devices.
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.
See all alternatives
Decisions about PHP and Python
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
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
Tom Klein
Tom Klein
CEO at Gentlent · | 4 upvotes · 47.1K 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
Adam Bavosa
Adam Bavosa
Python
Python
JavaScript
JavaScript
asyncio
asyncio
PubNub
PubNub

I love Python and JavaScript . You can do the same JavaScript async operations in Python by using asyncio. This is particularly useful when you need to do socket programming in Python. With streaming sockets, data can be sent or received at any time. In case your Python program is in the middle of executing some code, other threads can handle the new socket data. Libraries like asyncio implement multiple threads, so your Python program can work in an asynchronous fashion. PubNub makes bi-directional data streaming between devices even easier.

See more
Ali Soueidan
Ali Soueidan
Creative Web Developer at Ali Soueidan · | 18 upvotes · 498.8K views
npm
npm
Vue.js
Vue.js
vuex
vuex
JavaScript
JavaScript
Pug
Pug
Sass
Sass
JSON
JSON
Git
Git
GitHub
GitHub
ES6
ES6
Asana
Asana
Adobe Illustrator
Adobe Illustrator
PHP
PHP
Babel
Babel

Application and Data: Since my personal website ( https://alisoueidan.com ) is a SPA I've chosen to use Vue.js, as a framework to create it. After a short skeptical phase I immediately felt in love with the single file component concept! I also used vuex for state management, which makes working with several components, which are communicating with each other even more fun and convenient to use. Of course, using Vue requires using JavaScript as well, since it is the basis of it.

For markup and style, I used Pug and Sass, since they’re the perfect match to me. I love the clean and strict syntax of both of them and even more that their structure is almost similar. Also, both of them come with an expanded functionality such as mixins, loops and so on related to their “siblings” (HTML and CSS). Both of them require nesting and prevent untidy code, which can be a huge advantage when working in teams. I used JSON to store data (since the data quantity on my website is moderate) – JSON works also good in combo with Pug, using for loops, based on the JSON Objects for example.

To send my contact form I used PHP, since sending emails using PHP is still relatively convenient, simple and easy done.

DevOps: Of course, I used Git to do my version management (which I even do in smaller projects like my website just have an additional backup of my code). On top of that I used GitHub since it now supports private repository for free accounts (which I am using for my own). I use Babel to use ES6 functionality such as arrow functions and so on, and still don’t losing cross browser compatibility.

Side note: I used npm for package management. 🎉

*Business Tools: * I use Asana to organize my project. This is a big advantage to me, even if I work alone, since “private” projects can get interrupted for some time. By using Asana I still know (even after month of not touching a project) what I’ve done, on which task I was at last working on and what still is to do. Working in Teams (for enterprise I’d take on Jira instead) of course Asana is a Tool which I really love to use as well. All the graphics on my website are SVG which I have created with Adobe Illustrator and adjusted within the SVG code or by using JavaScript or CSS (SASS).

See more
Helio Junior
Helio Junior
Python
Python
JavaScript
JavaScript
CSS 3
CSS 3
#DataScience
#UXdesign
#NodeJS
#Electron

Python is a excellent tool for #DataScience , but up to now is very poor in #uxdesign . To do some design I'm using JavaScript and #nodejs , #electron stack. The possibility of use CSS 3 to draw interfaces is very awesome and fast. Unfortunatelly Python don't have (yet) a good way to make a #UXdesign .

See more
John Datserakis
John Datserakis
Go
Go
PHP
PHP
Node.js
Node.js

For the backend of https://www.rsvpkeeper.com I went with Go.

My past few project have been built with Go and I'm really loving it. It was my first statically typed language after many years with PHP and Node.js - and honestly I couldn't be happier to have made the switch.

The biggest thing for me, is that with the forced declaration of types - it's made me feel like I've made a more solid backend. Sometimes with PHP I felt like a stiff breeze could knock the whole thing down. I know that's an exaggeration - but it's kinda how it feels.

Anyways, everyone knows that it almost doesn't even matter what an app is actually made with - what really matters are the design decisions you make a long the way.

See more
Bryam Rodriguez
Bryam Rodriguez
Ruby
Ruby
Rails
Rails
React
React
Redux
Redux
Create React App
Create React App
Jest
Jest
react-testing-library
react-testing-library
RSpec
RSpec
PostgreSQL
PostgreSQL
MongoDB
MongoDB
Redis
Redis
React Native
React Native
Next.js
Next.js
Python
Python
Bit
Bit
JavaScript
JavaScript

I'm working as one of the engineering leads in RunaHR. As our platform is a Saas, we thought It'd be good to have an API (We chose Ruby and Rails for this) and a SPA (built with React and Redux ) connected. We started the SPA with Create React App since It's pretty easy to start.

We use Jest as the testing framework and react-testing-library to test React components. In Rails we make tests using RSpec.

Our main database is PostgreSQL, but we also use MongoDB to store some type of data. We started to use Redis  for cache and other time sensitive operations.

We have a couple of extra projects: One is an Employee app built with React Native and the other is an internal back office dashboard built with Next.js for the client and Python in the backend side.

Since we have different frontend apps we have found useful to have Bit to document visual components and utils in JavaScript.

See more
Node.js
Node.js
Java
Java
Spring Boot
Spring Boot
Python
Python
Flask
Flask
Django
Django

Since you said that your middleware will be accessing DB and expose API, you can go with Node.js. It will make your development fast and easy. Suppose in future you will add some business logic you can choose Java with Spring Boot or Python with Flask / Django. NOTE: Language or framework doesn't matter. Choose based on your programming knowledge.

See more
Jakub Olan
Jakub Olan
DevOps Engineer · | 17 upvotes · 29.1K views
ataraclxaraclx
Java
Java
Python
Python
C++
C++
Node.js
Node.js
Rust
Rust
Kotlin
Kotlin
Go
Go

In our company we have think a lot about languages that we're willing to use, there we have considering Java, Python and C++ . All of there languages are old and well developed at fact but that's not ideology of araclx. We've choose a edge technologies such as Node.js , Rust , Kotlin and Go as our programming languages which is some kind of fun. Node.js is one of biggest trends of 2019, same for Go. We want to grow in our company with growth of languages we have choose, and probably when we would choose Java that would be almost impossible because larger languages move on today's market slower, and cannot have big changes.

See more
Shivam Bhargava
Shivam Bhargava
AVP - Business at VAYUZ Technologies Pvt. Ltd. · | 12 upvotes · 12.4K views
Swift
Swift
Kotlin
Kotlin
React
React
Python
Python
Rails
Rails
Java
Java
Node.js
Node.js
#Neobank

Hi Community! Trust everyone is keeping safe. I am exploring the idea of building a #Neobank (App) with end-to-end banking capabilities. In the process of exploring this space, I have come across multiple Apps (N26, Revolut, Monese, etc) and explored their stacks in detail. The confusion remains to be the Backend Tech to be used?

What would you go with considering all of the languages such as Node.js Java Rails Python are suggested by some person or the other. As a general trend, I have noticed the usage of Node with React on the front or Node with a combination of Kotlin and Swift. Please suggest what would be the right approach!

See more
Saurav Pandit
Saurav Pandit
Application Devloper at Bny Mellon · | 7 upvotes · 8.8K views
JSON Web Token
JSON Web Token
OpenAPI
OpenAPI
Java
Java
AngularJS
AngularJS
Oracle
Oracle
Python
Python

I have just started learning Python 3 week back. I want to create REST api using python. The api will be use to save form data in Oracle database. The front end is using AngularJS 8 with Angular Material. In python there are so many framework for developing REST ** I am looking for some suggestions which REST framework to choose? ** Here are some feature I am looking for * Easy integration and unit testing like in Angular we just run command. * Code packageing, like in Java maven project we can build and package. I am looking for something which I can push in artifactory and deploy whole code as package. *Support for swagger/ OpenAPI * Support for JSON Web Token * Support for testcase coverage report Framework can have feature included or can be available by extension.

See more
Go
Go
Flutter
Flutter
Python
Python
React Native
React Native

I've been juggling with an app idea and am clueless about how to build it.

A little about the app:

  • Social network type app ,
  • Users can create different directories, in those directories post images and/or text that'll be shared on a public dashboard .

Directory creation is the main point of this app. Besides there'll be rooms(groups),chatting system, search operations similar to instagram,push notifications

I have two options:

  1. React Native, Python, AWS stack or
  2. Flutter, Go ( I don't know what stack or tools to use)
See more
Interest over time
Reviews of PHP and Python
Review ofPHPPHP

source: w3techs.com

Rants about PHP are everywhere, but during the last years the language and the whole ecosystem has evolved.

The lastest versions support namespaces, closures, traits, generators and with composer a dependency manager that changed the way PHP developers work and collaborate.

How developers use PHP and Python
Avatar of Exchange rates API
Exchange rates API uses PythonPython

Beautiful is better than ugly.

Explicit is better than implicit.

Simple is better than complex.

Complex is better than complicated.

Flat is better than nested.

Sparse is better than dense.

Readability counts.

Special cases aren't special enough to break the rules.

Although practicality beats purity.

Errors should never pass silently.

Unless explicitly silenced.

In the face of ambiguity, refuse the temptation to guess.

There should be one-- and preferably only one --obvious way to do it.

Although that way may not be obvious at first unless you're Dutch.

Now is better than never.

Although never is often better than right now.

If the implementation is hard to explain, it's a bad idea.

If the implementation is easy to explain, it may be a good idea.

Namespaces are one honking great idea -- let's do more of those!

Avatar of Web Dreams
Web Dreams uses PythonPython

To me, this is by far the best programming language. Why? Because it’s the only language that really got me going after trying to get into programming with Java for a while. Python is powerful, easy to learn, and gets you to unsderstand other languages more once you understand it. Did I state I love the python language? Well, I do..

Avatar of ttandon
ttandon uses PythonPython

Backend server for analysis of image samples from iPhone microscope lens. Chose this because of familiarity. The number one thing that I've learned at hackathons is that work exclusively with what you're 100% comfortable with. I use Python extensively at my day job at Wit.ai, so it was the obvious choice for the bulk of my coding.

Avatar of Vladislav Moshynec
Vladislav Moshynec uses PHPPHP

Use the ipwhois.io IP lookup API to quickly and simply integrate IP geolocation into your script or website. Save yourself the hassle of setting up local GeoIP libraries and having to remember to regularly update the data.

GitHub

Avatar of papaver
papaver uses PythonPython

been a pythoner for around 7 years, maybe longer. quite adept at it, and love using the higher constructs like decorators. was my goto scripting language until i fell in love with clojure. python's also the goto for most vfx studios and great for the machine learning. numpy and pyqt for the win.

Avatar of ShadowICT
ShadowICT uses PHPPHP

We use PHP as our main backend preprocessor. Being a well established language, it is supported by a large community as well as a dedicated team of developers. It is used for much heavier projects that do not require realtime processes as well as being used in a hybrid system alongside NodeJS.

Avatar of Andrew Gatenby
Andrew Gatenby uses PHPPHP

PHP has been the backbone of what we've done at Visualsoft for years. We have lots of experienced people who have used it and know how to get the best out of it. It's come on leaps and bounds over recent years, and is the basis of pretty much everything we'll build with.

Avatar of Ordius IT Solutions Pvt Ltd
Ordius IT Solutions Pvt Ltd uses PHPPHP

The reason being they are simple to learn and easy to implement apps on any size.

The learning curve for PHP and MySQL is less compared to MEAN. It’s advisable to learn PHP and MySQL if you want to have a taste of web-development or you are in a hurry.

Avatar of IPWHOIS.io - IP Geolocation API
IPWHOIS.io - IP Geolocation API uses PHPPHP

Use the ipwhois.io IP lookup API to quickly and simply integrate IP geolocation into your script or website. Save yourself the hassle of setting up local GeoIP libraries and having to remember to regularly update the data.

Avatar of Blood Bot
Blood Bot uses PythonPython

Large swaths of resources built for python to achieve natural language processing. (We are in the process of deprecating the services written in python and porting them over to Javascript and node)

How much does PHP cost?
How much does Python cost?
Pricing unavailable
Pricing unavailable