我想成为一名PHP / MySQL程序员
我必须知道哪些技术?
像:
请告诉我必须知道的最低要求,并告诉我上一个列表中你最喜欢的东西?
由于
答案 0 :(得分:34)
首先,没有必须知道学习PHP和MySQL ......你不知道任何事情,你会知道一堆。如果必须知道,那么没有人能够进入PHP和MySQL开发。我个人认为你在不了解它的一切的情况下处于一个微小的优势。它将为您提供一个全新的视角和超越盒子态度的思考:)
就这个线程中面向对象的东西而言,这是真的。但是,正如其他人所说,完全取决于程序员(你)决定如何编写代码。您可以使用面向对象的实践,创建意大利面条代码连接,或者恰好使用一堆函数,或者其他任何东西。无论哪种方式,正如其他人一直在说的,这取决于你:)
IRC频道:
真的不需要这个,但我发现它很有帮助......在这里见到你:)
irc.freenode.net #php
<强>手册强>
本手册是您的朋友,可能是您在潜入之前应该知道的唯一事情。
http://dev.mysql.com/doc/refman/5.0/en/apis-php.html
<强>框架:强>
确保它是MVC框架:)
<强> IDE:强>
无论什么最适合你:)
http://www.zend.com/en/products/studio/
https://www.jetbrains.com/phpstorm/
模板引擎:
PHP是一个很好的模板引擎
模型视图控制器框架有助于此
<强>的Ajax:强>
http://developer.yahoo.com/yui/
http://code.google.com/webtoolkit/
<强> CSS:强>
http://www.yaml.de/en/home.html
http://code.google.com/p/blueprintcss/
http://developer.yahoo.com/yui/reset/
绝对不是一个详尽的清单,事情会不断变化......但是,这是一个开始:)
玩得开心!
Chrelad
答案 1 :(得分:19)
安全性是每个网络程序员在被允许发布可以在互联网上公开访问的代码之前应该学习的重要主题。
安全问题的例子:
在编写PHP应用程序时,您应该了解并记住更多安全问题。网站http://www.owasp.org包含大量有用的information帮助。
答案 2 :(得分:19)
PHP是我的第一语言,我在10年前的第一份工作中担任办公室初级阶段时学到了这门语言。以下是我的经验:
答案 3 :(得分:18)
每个PHP程序员应该知道什么?
您需要了解不是PHP的语言。我并不是说你不应该用PHP开发你的网站,它实际上非常好,但你真的需要知道至少一种其他语言来获得一些观点。
为什么呢? PHP破碎,充满了糟糕的设计和错误。你可以在PHP中编写优秀的代码,但是如果你不知道更好的话,你将永远无法发现PHP本身的糟糕设计和失败。
我建议使用python,ruby或C#
PS:如果你认为这不是一个有用的建议,那么无论如何都要降低这个答案,但是如果你因为我觉得PHP被破坏和设计糟糕而感到受到侮辱那么你不要down信使,我只是说实话!答案 4 :(得分:15)
首先,PHP本身就是一个模板系统
答案 5 :(得分:10)
安全。
就像卢卡斯阿曼所说的那样 - 用PHP编写好的代码取决于你;它并没有让你烦恼。如果你不明白为什么你需要确认注销,或者为什么你不能只是在javascript中验证,或者为什么register_globals是坏的 - 你的应用程序将以某种形式或其他形式易受攻击。
答案 6 :(得分:8)
您需要了解以下内容(我建议按此顺序):
答案 7 :(得分:7)
忽略mysql_ *函数。它们不仅没有提供编写安全代码的简单方法,而且如果你尝试的话,它们实际上会不遗余力地使它成为painful and tedious。使用mysqli或PDO代替(现在你没有任何借口 - PHP 4在几个月前就已经过期了。)
答案 8 :(得分:6)
所有好的答案,但有一些重要的缺失:如果你想认真进入PHP,那么你应该意识到有很多PHP程序员在那里懒惰,无能,无知,被误导,不幸得到他们的代码发布给公众。 PHP的历史意味着它支持一些有问题的功能(不仅像register_globals这样的东西,还有像自动初始化这样的小东西),人们仍然使用它们。你不想。
答案 9 :(得分:5)
我想说最重要的是要了解如何使用PHP构建页面的整个过程 - 请求来自客户端(Web浏览器),点击Web服务器,然后传递给PHP,然后生成发回的响应。对此的充分理解将为您奠定基础
一旦你把它弄下来,那么你应该对编写任何应用程序都很满意。但除非你已经把它弄下来,否则你会开始混合我现在看到很多新手之前的事情。
答案 10 :(得分:4)
每个地方的每个值都必须进行适当的编码。 echo $some_variable_that_seems_innocent
十分之一是邪恶的。
在构建SQL查询时,在HTML / XML,预备语句或至少htmlspecialchars()
中使用addslashes()
,在将值插入脚本时json_encode()
,在附加URL组件时rawurlencode()
,构造shell命令时的escapeshellargs()
等。
如果您在XHTML文档中作为脚本一部分的URL中插入文本,则需要对数据进行三次编码。
答案 11 :(得分:3)
虽然这不是一种技术,但我认为你理解这一点非常重要,在使用PHP时,完全由你来编写好的代码。 PHP有能力,但它不鼓励它。您完全负责编写设计良好的代码,如果您愿意,则遵循OO原则。你将无法使用该语言。
答案 12 :(得分:2)
使用一个很棒的IDE(例如Eclipse),可以让你调试并完成一些代码。这样可以节省一些时间。
PHP有很多程序员并且非常受欢迎=很多事情已经为你完成了,在编写一些代码之前,做谷歌搜索总是一个好主意。
如果从头开始,您应该使用一些Framework。这将回答你关于AJax,模板引擎的所有问题......因为大多数问题都附带这些软件包。 以下是关于如何开始选择框架的一些帖子:SO 1,SO2,这是a list of PHP框架。
您可以在Windows,Linux或Mac上开发PHP。
答案 13 :(得分:2)
设置网络服务器
要在您的计算机上本地运行PHP和MySQL,您需要安装带有php模块和MySQL数据库服务器的Apache webserver。即。 LAMP网络服务器(Linux Apache MySQL PHP)。
过去,我建议安装Ubuntu。目前,有一些解决方案可以在不使用linux的情况下为您提供一键安装Web服务器。
对于Windows:
http://www.wampserver.com
对于OSX: http://www.mamp.info
让LAMP网络服务器使用w3schools.com教程开始。
答案 14 :(得分:1)
答案 15 :(得分:1)
我想说一个基本的是HTML。 ;)
答案 16 :(得分:0)
请注意您在网络上找到的代码段。它们通常包含html中的sql,这是不好的做法,以及sql注入等安全漏洞。我见过很少使用预处理语句,这对安全性有好处。
答案 17 :(得分:0)
PHP语言
访问PHP.net并阅读所有文档。当你完成后,你不会知道关于php需要知道的一切,但你会知道在哪里看。
答案 18 :(得分:0)
就个人而言,我发现这本书“Build your own database driven website using PHP and MySQL”非常有帮助。
除此之外,我发现最难习惯使用PHP的一件事是,与我曾经使用的任何其他语言相比,它是多么放松。我的意思是没有类型,语法和标点符号的灵活性。我个人认为这是一件好事,但我也知道它可能会鼓励非常不好的行为。
这是我的另一个提示:尝试使用类似DRY原则的东西 - 也就是说,你会发现自己一遍又一遍地编写相同的小代码(或大代码) - 尽早将它们变成函数正如您在编码过程中所做的那样,以后生活会变得更加轻松。
答案 19 :(得分:0)
您应该知道如何有效地使用至少一个Debugger / IDE。通过逐步完成并观察它运行,您可以从代码中学到很多东西。它既可以更轻松地跟踪错误,又可以提高代码质量。我相信你永远不应该将代码提交给你没有看过的项目。