人们普遍认为,PHP是初学者学习的最简单的编程语言,也是最有效的编程语言
为什么 - 让PHP比其他语言更容易的原因
面向对象的PHP学习也是如此 - 或者现在有一些其他面向对象的语言比PHP更容易学习
Kyl*_*ild 25
PHP是Web的原生.虽然Ruby和Python具有更清晰的语法,更优雅和更强大的功能,但Ruby/Python和Web本身之间总会有一层抽象 - 毕竟,它们的设计范围比Web更广泛.
编程的新手通常是系统管理员的新手,而在Rails或Django中使用Hello World非常痛苦 - 有些甚至是令人望而却步的 - 与PHP相比.
对于新手来说,很容易将输入内容概念化:
http://mysite.com/something.php
Run Code Online (Sandbox Code Playgroud)
...将执行存储在文件中的代码:
/path/to/mysite's/webroot/something.php
Run Code Online (Sandbox Code Playgroud)
这种简单的一对一路由也反映了HTML和其他静态文件的路由.
但要注意,因为这种一对一的路由也会导致安全问题(即人们倾向于将所有可执行代码保存在webroot中 - 甚至是安全代码,其中可能包含密码,哈希盐和其他隐私 - 重要码).将此与缺乏系统管理员体验相结合,网络上的许多网站都chmod远离完全暴露.
像Symfony这样负责任的PHP 帮助人们避免这种情况,但Symfony需要与Rails和Django相同级别的系统管理员排序.
面向对象编程是可选的
PHP是宽容
的脚本继续运行小故障.
当E_NOTICE(或甚至E_WARNINGs)被抑制时,错误甚至都不明显.
但是在像substr这样的小东西中:在C#中,当你在带有1个字符的$ text上尝试substr($ text,3)时,你会得到一个很大的异常.
伟大的在线手册
http://php.net/manual/
快速和脏是默认
语言充满了有用的快捷方式.
PHP让我可以在不输入文章的情况下表达我想要的内容.
概念简洁.
php站点可以包含一个代表一个页面的文件,动态内容根据需要嵌入静态标记中.您可以扫描一个简单的php文件,查看定义的所有内容并按顺序运行.
使用一个简单的php站点,没有学习曲线,人们必须弄清楚特定逻辑属于哪个文件,或者定义了一个函数的外部文件.
...
当然有一个原因,像rails这样的框架提供了大量的文件和固定的结构,我肯定会推荐使用一个适用于任何规模较大(可能几乎每个小)的网站.
我确实认为,这是一个非常低的进入门槛,这是很多PHP的受欢迎程度.
我不认为有任何理由不能用红宝石或类似的方式编写更好的PHP风格系统 - 只考虑目录和.erb和.haml文件和很好的4.days.ago语法.但大多数能够做到这一点的人都看到了框架提供的额外工具的价值.Sinatra是一个最小的框架,它可以在一个文件中定义整个站点,但即使它具有由代码驱动的路由,而不仅仅是目录和文件命名.