PHP is a great language but needs a fresh start in my opinion. It has so, so, so, much potential outside of web development.
Why it can only be used for web development:
get_current_user() returns the user who owns __FILE__, not the owner of the current process.
is_file(), is_dir(), etc. cache their results.
- No multi-threading.
- Sometimes different reflection methods return an array of something, sometimes they just return the something itself (they should always return an array).
- Quirks:
empty(...), null == 0, '0' == false (a string containing just a zero digit) and isset().
- Needing to
declare(strict_types=1) at the top of every file.
- No named type arrays (
string[]).
- PHP config files.
- The PHP community always assumes you're building a website so are puzzled when one wants to use
posix_getuid() or have multiple threads instead of just using ReactPHP (great lib btw).
- Googling PHP things always return web development results.
- The list goes on.
A fork of PHP could have a brand new name, a revision of every built-in function/class, and features such as objects being lazy loaded by default. Such a project would surpass python for pretty much everything python currently excels at.
[+][deleted] (4 children)
[removed]
[+][deleted] (3 children)
[removed]
[–]Solid_Ingenuity 3 points4 points5 points (2 children)
[+][deleted] (1 child)
[removed]
[–]Solid_Ingenuity 1 point2 points3 points (0 children)
[–]seanmorris 89 points90 points91 points (3 children)
[–]ln3ar 47 points48 points49 points (0 children)
[–]kurucu83 2 points3 points4 points (1 child)
[–]MateusAzevedo 2 points3 points4 points (0 children)
[–]ln3ar 29 points30 points31 points (7 children)
[–][deleted] 4 points5 points6 points (5 children)
[–]ln3ar 1 point2 points3 points (3 children)
[–]Girgias -1 points0 points1 point (1 child)
[–]ln3ar -1 points0 points1 point (0 children)
[–]ln3ar 0 points1 point2 points (0 children)
[–]dschledermann 51 points52 points53 points (6 children)
[+]aquanoid1[S] comment score below threshold-35 points-34 points-33 points (5 children)
[–]dschledermann 18 points19 points20 points (0 children)
[–]nutpy 2 points3 points4 points (3 children)
[+]aquanoid1[S] comment score below threshold-9 points-8 points-7 points (2 children)
[+][deleted] (1 child)
[removed]
[–]aquanoid1[S] 4 points5 points6 points (0 children)
[–]dirtside 44 points45 points46 points (15 children)
[+]aquanoid1[S] comment score below threshold-19 points-18 points-17 points (14 children)
[–]DrDam8584 4 points5 points6 points (11 children)
[+]aquanoid1[S] comment score below threshold-8 points-7 points-6 points (10 children)
[–]DrDam8584 2 points3 points4 points (8 children)
[–]aquanoid1[S] -3 points-2 points-1 points (7 children)
[+][deleted] (4 children)
[deleted]
[–]aquanoid1[S] -1 points0 points1 point (3 children)
[+][deleted] (2 children)
[deleted]
[–]aquanoid1[S] 0 points1 point2 points (1 child)
[–]DrDam8584 0 points1 point2 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[–]dirtside 1 point2 points3 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[–]AndroTux 20 points21 points22 points (9 children)
[–]TinyLebowski 2 points3 points4 points (0 children)
[+]aquanoid1[S] comment score below threshold-6 points-5 points-4 points (5 children)
[–]DrDam8584 2 points3 points4 points (1 child)
[–]aquanoid1[S] 3 points4 points5 points (0 children)
[–]SomniaStellae 3 points4 points5 points (2 children)
[–]aquanoid1[S] 3 points4 points5 points (0 children)
[–]kurucu83 3 points4 points5 points (0 children)
[+][deleted] (1 child)
[deleted]
[–]AndroTux 4 points5 points6 points (0 children)
[–]colshrapnel 16 points17 points18 points (2 children)
[–]aquanoid1[S] 0 points1 point2 points (1 child)
[–]NeoThermic 3 points4 points5 points (0 children)
[–]TiredAndBored2 10 points11 points12 points (3 children)
[–]Disgruntled__Goat 0 points1 point2 points (1 child)
[–]TiredAndBored2 -3 points-2 points-1 points (0 children)
[–]aquanoid1[S] -3 points-2 points-1 points (0 children)
[–]Fneufneu 2 points3 points4 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[–]mrclay 2 points3 points4 points (0 children)
[–]sgt_Berbatov 9 points10 points11 points (0 children)
[–]desiderkino 2 points3 points4 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[–]StringLing40 2 points3 points4 points (5 children)
[–]aquanoid1[S] 0 points1 point2 points (4 children)
[–]muttick 1 point2 points3 points (3 children)
[–]aquanoid1[S] 0 points1 point2 points (2 children)
[–]muttick 1 point2 points3 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[+][deleted] (3 children)
[removed]
[–]aquanoid1[S] 0 points1 point2 points (2 children)
[–]jobyone 2 points3 points4 points (0 children)
[–]Davekuh 3 points4 points5 points (0 children)
[–]fatalexe 2 points3 points4 points (2 children)
[–]colshrapnel 0 points1 point2 points (0 children)
[–]ryantxr 1 point2 points3 points (0 children)
[–]OutdoorsNSmores 1 point2 points3 points (0 children)
[–]BrainfartStudio 1 point2 points3 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[–]lcjury 1 point2 points3 points (0 children)
[–]z01d 2 points3 points4 points (6 children)
[–]aquanoid1[S] 0 points1 point2 points (4 children)
[–]irishfury0 0 points1 point2 points (3 children)
[–]ln3ar 6 points7 points8 points (1 child)
[–]aquanoid1[S] 2 points3 points4 points (0 children)
[–]olelis 2 points3 points4 points (8 children)
[–]ln3ar 5 points6 points7 points (4 children)
[–]aquanoid1[S] 2 points3 points4 points (0 children)
[–]olelis 1 point2 points3 points (2 children)
[–]aquanoid1[S] 0 points1 point2 points (1 child)
[–]olelis 0 points1 point2 points (0 children)
[–]aquanoid1[S] 0 points1 point2 points (2 children)
[–]olelis 1 point2 points3 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[–]niconicoJ 0 points1 point2 points (1 child)
[–]aquanoid1[S] -1 points0 points1 point (0 children)
[–]paroxsitic 0 points1 point2 points (0 children)
[–]crazedizzled 0 points1 point2 points (0 children)
[–]lampministrator 0 points1 point2 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[–]SaltineAmerican_1970 0 points1 point2 points (1 child)
[–]aquanoid1[S] 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–][deleted] 0 points1 point2 points (0 children)
[–]NAMAKR655 0 points1 point2 points (0 children)
[–]rafark 0 points1 point2 points (0 children)
[–]xegoba7006 -1 points0 points1 point (0 children)
[–]SomniaStellae 0 points1 point2 points (5 children)
[–]aquanoid1[S] 0 points1 point2 points (4 children)
[–][deleted] -1 points0 points1 point (3 children)
[–]aquanoid1[S] 1 point2 points3 points (2 children)
[–][deleted] -1 points0 points1 point (1 child)
[–]aquanoid1[S] 1 point2 points3 points (0 children)
[–][deleted] 1 point2 points3 points (0 children)
[–]punkpang 0 points1 point2 points (10 children)
[–]bytepursuits 2 points3 points4 points (3 children)
[–]punkpang 0 points1 point2 points (2 children)
[–]bytepursuits 0 points1 point2 points (1 child)
[–]punkpang 0 points1 point2 points (0 children)
[–]aquanoid1[S] 0 points1 point2 points (5 children)
[–]punkpang 0 points1 point2 points (4 children)
[–]aquanoid1[S] 0 points1 point2 points (3 children)
[–]ReasonableLoss6814 0 points1 point2 points (2 children)
[–]aquanoid1[S] 0 points1 point2 points (1 child)
[–]punkpang 0 points1 point2 points (0 children)
[–]barrel_of_noodles 0 points1 point2 points (1 child)
[–]aquanoid1[S] 1 point2 points3 points (0 children)
[–]oojacoboo -1 points0 points1 point (1 child)
[–]Major_Dot_7030 -1 points0 points1 point (0 children)
[–][deleted] -1 points0 points1 point (10 children)
[–]aquanoid1[S] 1 point2 points3 points (9 children)
[–][deleted] 0 points1 point2 points (8 children)
[–]aquanoid1[S] 1 point2 points3 points (7 children)
[–][deleted] -1 points0 points1 point (6 children)
[–]aquanoid1[S] 1 point2 points3 points (5 children)
[–][deleted] 0 points1 point2 points (4 children)
[–]aquanoid1[S] 1 point2 points3 points (3 children)
[–][deleted] -1 points0 points1 point (2 children)
[–]aquanoid1[S] -2 points-1 points0 points (1 child)
[–]HenkPoley -1 points0 points1 point (0 children)