Get Advice Icon

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

Go
Go

6.1K
4.3K
+ 1
2.5K
PHP
PHP

59.6K
15.4K
+ 1
4.3K
Add tool

Go vs PHP: What are the differences?

Developers describe Go as "An open source programming language that makes it easy to build simple, reliable, and efficient software". Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language. On the other hand, PHP is detailed as "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.

Go and PHP can be categorized as "Languages" tools.

"High-performance", "Simple, minimal syntax" and "Fun to write" are the key factors why developers consider Go; whereas "Large community", "Open source" and "Easy deployment" are the primary reasons why PHP is favored.

Go and PHP are both open source tools. Go with 60.4K GitHub stars and 8.36K forks on GitHub appears to be more popular than PHP with 23.9K GitHub stars and 5.53K GitHub forks.

9GAG, Hootsuite, and 37 Signals are some of the popular companies that use PHP, whereas Go is used by Uber Technologies, Pinterest, and Square. PHP has a broader approval, being mentioned in 8904 company stacks & 2933 developers stacks; compared to Go, which is listed in 901 company stacks and 606 developer stacks.

What is Go?

Go is expressive, concise, clean, and efficient. Its concurrency mechanisms make it easy to write programs that get the most out of multicore and networked machines, while its novel type system enables flexible and modular program construction. Go compiles quickly to machine code yet has the convenience of garbage collection and the power of run-time reflection. It's a fast, statically typed, compiled language that feels like a dynamically typed, interpreted language.

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

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

What tools integrate with Go?
What tools integrate with PHP?

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

What are some alternatives to Go and PHP?
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.
Rust
Rust is a systems programming language that combines strong compile-time correctness guarantees with fast performance. It improves upon the ideas of other systems languages like C++ by providing guaranteed memory safety (no crashes, no data races) and complete control over the lifecycle of memory.
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!
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.
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.
See all alternatives
Decisions about Go and PHP
PagerDuty
PagerDuty
Slack
Slack
Go
Go
PHP
PHP
Java
Java
Python
Python
Ruby
Ruby
Node.js
Node.js
Sqreen
Sqreen

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
Antonio Sanchez
Antonio Sanchez
CEO at Kokoen GmbH · | 11 upvotes · 90K views
atKokoen GmbHKokoen GmbH
ExpressJS
ExpressJS
Node.js
Node.js
JavaScript
JavaScript
MongoDB
MongoDB
Go
Go
MySQL
MySQL
Laravel
Laravel
PHP
PHP

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
SVN (Subversion)
SVN (Subversion)
Git
Git
JSON
JSON
XML
XML
Python
Python
PHP
PHP
Java
Java
Swift
Swift
JavaScript
JavaScript
Linux
Linux
GitHub
GitHub
Visual Studio Code
Visual Studio Code

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 · 4K views
atShaw AcademyShaw Academy
Python
Python
PHP
PHP

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
PHP
PHP
Bulma
Bulma
Asana
Asana
Stripe
Stripe
Let's Encrypt
Let's Encrypt
CloudFlare
CloudFlare
Deployer
Deployer
Git
Git
GitHub
GitHub
Ubuntu
Ubuntu
nginx
nginx
Buddy
Buddy
Webpack
Webpack
Vue.js
Vue.js
JavaScript
JavaScript
HTML5
HTML5
Sass
Sass
Google Analytics
Google Analytics
PhpStorm
PhpStorm
Laravel
Laravel
#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 · 7.8K views
JavaScript
JavaScript
Visual Studio Code
Visual Studio Code
PHP
PHP
PhpStorm
PhpStorm
React Native
React Native
#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
Git
Git
Docker
Docker
NATS
NATS
JavaScript
JavaScript
TypeScript
TypeScript
PostgreSQL
PostgreSQL
Python
Python
Go
Go

Go is a high performance language with simple syntax / semantics. Although it is not as expressive as some other languages, it's still a great language for backend development.

Python is expressive and battery-included, and pre-installed in most linux distros, making it a great language for scripting.

PostgreSQL: Rock-solid RDBMS with NoSQL support.

TypeScript saves you from all nonsense semantics of JavaScript , LOL.

NATS: fast message queue and easy to deploy / maintain.

Docker makes deployment painless.

Git essential tool for collaboration and source management.

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

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 · 72.3K views
atLabinatorLabinator
Debian
Debian
Manjaro
Manjaro
Visual Studio Code
Visual Studio Code
Sublime Text
Sublime Text
WordPress
WordPress
PHP
PHP
Vanilla.JS
Vanilla.JS
Sass
Sass
CSS 3
CSS 3
HTML5
HTML5

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
Vishwa Bhat
Vishwa Bhat
Fullstack Developer at Sequoia · | 10 upvotes · 4.5K views
atSequoia Consulting GroupSequoia Consulting Group
Java
Java
Go
Go
Node.js
Node.js

Our new backend micro services are primarily written in Node.js and Go and legacy systems are written in Java. For our new stack decision, we aimed to achieve greater developer productivity, low IO latency and good community so we had couple of technologies in hand to choose but finally we concluded to go for Node.js for API layer and Go for CPU/IO intensive tasks. Currently the inter-services communication is happening via REST but soon to be moved to RPC-based communication.

See more
Tassanai Singprom
Tassanai Singprom
Slack
Slack
BrowserStack
BrowserStack
Sentry
Sentry
Kibana
Kibana
Visual Studio Code
Visual Studio Code
npm
npm
GitLab
GitLab
GitHub
GitHub
Git
Git
Elasticsearch
Elasticsearch
Postman
Postman
Google Analytics
Google Analytics
MariaDB
MariaDB
GraphQL
GraphQL
Amazon RDS
Amazon RDS
Lumen
Lumen
Laravel
Laravel
Firebase
Firebase
Vue.js
Vue.js
Sass
Sass
Ubuntu
Ubuntu
Amazon EC2
Amazon EC2
Redis
Redis
jQuery
jQuery
HTML5
HTML5
PHP
PHP
JavaScript
JavaScript

This is my stack in Application & Data

JavaScript PHP HTML5 jQuery Redis Amazon EC2 Ubuntu Sass Vue.js Firebase Laravel Lumen Amazon RDS GraphQL MariaDB

My Utilities Tools

Google Analytics Postman Elasticsearch

My Devops Tools

Git GitHub GitLab npm Visual Studio Code Kibana Sentry BrowserStack

My Business Tools

Slack

See more
Robert Zuber
Robert Zuber
CTO at CircleCI · | 4 upvotes · 8.8K views
atCircleCICircleCI
Slack
Slack
Go
Go
Hubot
Hubot
CoffeeScript
CoffeeScript

We have added very little to the CoffeeScript Hubot application – just enough to allow it to talk to our Hubot workers. The Hubot workers implement our operational management functionality and expose it to Hubot so we can get chat integration for free. We’ve also tailored the authentication and authorization code of Hubot to meet the needs of roles within our team.

For larger tasks, we’ve got an internal #CLI written in Go that talks to the same #API as Hubot, giving access to the same functionality we have in Slack, with the addition of scripting, piping, and all of our favorite #Unix tools. When the Hubot worker recognizes the CLI is in use, it logs the commands to Slack to maintain visibility of operational changes.

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

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
John Datserakis
John Datserakis
Node.js
Node.js
PHP
PHP
Go
Go

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
Dan Larsen
Dan Larsen
CTO at FlowStack · | 7 upvotes · 30.6K views
atFlowStack ApSFlowStack ApS
C++
C++
C
C
Rust
Rust
Go
Go

At FlowStack we write most of our backend in Go. Go is a well thought out language, with all the right compromises for speedy development of speedy and robust software. It's tooling is part of what makes Go such a great language. Testing and benchmarking is built into the language, in a way that makes it easy to ensure correctness and high performance. In most cases you can get more performance out of Rust and C or C++, but getting everything right is more cumbersome.

See more
Interest over time
Reviews of Go and PHP
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.

Avatar of tschellenbach
CEO at Stream
Review ofGoGo

Go has been a joy to work with. Performance is often 30x of what we used to see with Python. It's a performant and productive programming language: https://getstream.io/blog/switched-python-go/

How developers use Go and PHP
Avatar of Karma
Karma uses GoGo

The first time I actually started using Go was for software on our devices. So on our hotspots we have some custom software running in the firmware. For the first device, that was actually completely built by our manufacturer. But for the second generation most of the parts are built by us in-house and we needed a way to quickly develop software for the device. But we don't have any C programmers in-house, so we were actually looking for something that basically sits in between the friendliness of Ruby, but the performance and the ability to be deployed on an embedded system which you get with C. That's basically what led us to Go and it's been awesome for that. It works so well and so great. Since it works so great, it pushed us into looking into whether we should start using this for some backend services as well.

Avatar of Flutter Health Inc.
Flutter Health Inc. uses GoGo

The following basic API endpoints are implemented on the server written in Go:

  • Authorization (Sign Up, Sign In)
  • Update user profile
  • Community: add post, like post, add comment, delete post, add reply to comment
  • Self-diagnosis: send data from the app to the server
  • Journal: send user data from the app to the server
  • Add groups of community
  • Report post, report comment, report reply
  • Block user
Avatar of Zinc
Zinc uses GoGo

We wrote our own image processing, resizing, and snapshotting service in Go to allow our clients to send photos and GIFs to each other. Files are stored in S3, resized on the fly using OpenCV, and then cached in GroupCache before being served to clients.

Go allows it all to be quite fast and efficient, and entirely non-blocking on uploads!

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 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 Diggernaut LLC
Diggernaut LLC uses GoGo

Our main web scraping engine is built usign Golang because of the way how efficiently and fast this language is. Also out compilation facility let people who dont know Golang build fast as flash scrapers to run ourside of our platform without any knowledge in programming in Golang.

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 Refractal
Refractal uses GoGo

For some of our more taxing parts of our applications, something able to handle high I/O load quickly and with fast processing is needed. Go has completely filled that gap, allowing us to break down walls that would've been completely impossible with other languages.

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.

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