⑴ 学习php写api用什么书好 知乎
呃,题主加个知乎我就不知道该怎么说了。
谈几点我的看法,
php写应用程序(包括api)的好处就是,编写简单,语言格式轻松,运行调试方便,拓展多,强大。
跨平台,随着虚拟化技术发展,各大idc都提供PHP空间,便于部署。
呃,最重要的是,方便,强大吧。你像python,nodejs就没那么普及,而且常用的拓展还要install nmp之类的,主要是,有一定的部署成本,而且对开发者有一定的水平要求。
⑵ 知乎为什么用Python,而不用PHP
我觉得从语言的特点来看,用各种现代编程语言比一个圈绝对不会失败。
问题在于人才的结构。据我所知,政府,传统的国内企业,银行,工厂等,在最广泛使用的领域内,有很多的不良和非生产性的,希望只会拖动控制和网络的搜索代码是对程序员的要求。他们对计算机没有兴趣,编程的目标是尽快停止编程,在三年内管理或销售,但失败了。
所以正规计算机专业的教材,自始至终不会拿“如何使用某种GUI库”之类当重点讲,甚至可能压根就不讲。
⑶ android ios php 哪个好 知乎
php和ios还有安卓在同级别的情况下,ios的工资目前来看是稍微高点点,ios需要了解学下c语言,安卓则需要学java,你说看了ios觉得很难,那也不建议看安卓,建议你学php,容易上手快,去培训做几个项目基本就可以了,快速找份工作没问题,刚开始工资六七千应该问题(就深圳而言)不大只要学得还可以,JavaScript要精通学好可不容易,学php得时候必学JavaScript。至于前端,你学这三种语言都会学前端,语言是相通的,如果你学了php再去学ios和安卓应该会好些,程序猿不应该只懂一种语言这样在未来不保险。不建议题主边上班自学,这样效果不怎么好,你没有任何经验,一个人捣鼓说实话累,编程最好能找几个人一起做,至少出现bug的时候实在弄不好的时候有人能询问,有时候改bug真的很费时间,说多了都是泪.............
有人说数学和英语不重要这句话真的是超级坑爹,如果题主培训完了找份工作求温饱确实是没问题,但随着时间的推移如果需要往上走,那一定会用到数学,很多编程的思维方式数学中都有提到过,英语可以不一定要好,但题主要往上爬就需要数学了,如果题主高中大学数学都好那学起来会轻松许多,当然英文好的话那知识面可以更广........,像汇编和c还有编译原理,数据结构等等,这些杂七杂八的都要涉猎,这是往高手之路需要学习的,你可以看看大学计算机软件课程的课表。
⑷ php模拟登陆知乎
这种模拟登陆其实很简单,php的话主要用curl来实现。仔细研究一下你要抓的站具体是怎么实现用户登录的,可以用wireshark或者burpsuite(建议用后者)抓包看看整个过程都有那几次请求,每次请求都发送了哪些数据,构造好发给他就可以实现登录了。
之后获取个人信息就很容易了,找找php解析html库,或者最简单粗暴的就是字符串截取函数加正则表达式,把你想要的数据提取出来就好了。
对于你给出的这种验证码属于非常容易识别的验证码了,基本的识别原理参看使用Canvas进行验证码识别。
当然比较蛋疼的问题就是网页编码问题,经常爬过来全是乱码,网上找找看转码的方法,都试一下,这是一门玄学,能不能成功看你人品和耐心吧。
⑸ 前端,java,php,python工程师哪个最缺 知乎
这三门当中,首推Java。真的,Python当然是好,但是对于一个新入门的人,最重要的是先找到工作不是吗?而找工作的话,Java无疑是最容易的。对于跨行业的人而言,最困难的其实是第一步,那就是如何进入这个行业。如果你连进都进不来,第一份工作迟迟无法开始,那么好好努力,补上数据结构,设计模式,算法设计这些差距就根本无从说起,不是吗?不要被什么科班出身之类的说法吓坏了。虽然我是科班出身,但我始终觉得,只要你肯努力,这里面并没有什么无法逾越的鸿沟,最重要的是不要好高骛远,也不要急于求成。学习和积累是有一个过程的,在程序员这个行当,你一分付出,就会有一分回报。尊重学习的内在规律,循序渐进,终有一天,你会成为你想成为的那个人的。接着,我来谈谈具体的规划。
1. 了解Java的运行环境。搞清楚path和classpath是干什么的,怎么在命令行进行编译,执行。知道IDE的各个按钮后面真正发生了什么事情。
2. 掌握Java的语法。搞清楚包,接口,类,继承这些基本概念。掌握多态,overwrite,死背下IO的接口,包括InputStream/OutputStream和Writer/Reader,死背下网络编程和GUI编程的接口,死背JDBC接口。这一步,推荐的书是《 Thinking in Java》。<br>
3. 掌握多线程编程。弄明白ConcurrencyHashMap是怎么实现的,搞清楚synchronized是怎么回事,弄明白为什么要有Runnable接口。在第二步和第三步掌握到80%的时候,你就可以考虑找工作了。
4. 在工作中体会一下设计模式。推荐《Java与模式》这本书。看完里面的Decorator,IO接口你再也不会去死记硬背了。用的时候,根据Adaptor和Decorator的命名规则,自己临时推都推得出来。
5. 恶补数据结构。 搞清楚 LinkedList和 ArrayList的实现机制,了解它们的每一个接口的时间复杂度。同样的还有其他容器,Map啊,Set啊,都是一样的。栈,队列,二叉树,图贯穿编程始终,如果这一步你迈不过去,那就只能在低阶程序员里打转。开发任务了
6.如果有可能,最好对一些算法设计也有所涉猎。比如动态规则的思路,贪心算法,诸如KMP
7. 进阶,这时候就可以有自己的思考了。Java发展到现在,被用在各种各样的情景之中,说它是应用最广泛的编程语言并不过分。你在打好基础以后,就可以考虑应该向哪个方向发展了。比如服务端的架构,最好能学习一下JavaEE。JEE一直以来,都是让人觉得门槛太高。这个其实可以从Spring入手,搞清楚反射,控制反转,依赖注射都是什么鬼(这些神叨叨的名词其实都是为了解决Java本身不够动态这个缺陷而出现的,这里不展开,我只想提醒的是,这些概念没有什么大不了的东西,不要被爱装逼的家伙吓住了)。还有消息这个东西,还有ORM这个东西,都去搞搞清楚。想一下它们要解决什么问题,再猜一下他们是怎么实现的。我面试的时候发现,其实大多数优秀的开发者,即使以前没思考过这个问题,让他现场设计一下Hibernate,都能设计得差不多。这说明,这些框架性的东没有什么大不了的。有了基础,你也能设计出来。关键是要去动脑筋想。以上是以服务端开发举例,那么对于客户端,你就去思考事件响应机制是如何工作的(这个我不熟悉,就不再多说了)。还可以深入研究一下JVM的源代码,以及其实现机制,了解一下垃圾回收算法等等。到了这一步,你就可以应聘Java高级开发了。如果运气好,年薪30万是有可能的。保底也要20万了。
8. 架构。到了这一步,你就算是登堂入室,真正迈入高级开发人员了。这一步,你要思考更多的东西,比如,如何处理高并发,如何应对分布式系统,如何提供更健壮的数据服务。到了这一步,那就没有什么可以参考的,现成的东西了。全靠自己的悟性了。那最后能达到什么高度,就不是我这个层次能点评的了。<br><br>编程的世界永远向所有热爱编程的人开放,这是一个自由,平等,共享的世界,我始终是这样坚信的。
9.java黄埔军校
⑹ php掌握什么 知乎
PHP需要掌握的知识还是比较多的,最基本的比如:PHP基本的语法、php框架以及CMS、mysql数据库设计表、mysql数据库的基本SQL语句。现在一般PHP的都得会前端,那就包括:js/ajax、html、css。如果更高点层次的就是linux服务器。
1、用集成环境安装PHP环境,一定要记住这一点,不要自己分开去装,尤其是自学的朋友。不然你会觉得很复杂,会没有信心学下去的。也要注意任何高手都不是一蹴而就的,是一步一步,不同的阶段历练才有最后的沉淀。
2、先了解一些基本的变量类型,语法,函数,基本逻辑,写简单的代码。前期以尝试,培养兴趣为主。这段时间是打基础很好的时候,这个会影响你后面的发展,不过也可以在后期去完善。
3、这时候你可能觉得PHP就这样,没什么难度,或者有的觉得太难了,简直一脸疑惑。这个到底有什么用。在这时候一定要坚持下来,可以试试先放一下,别太较真。慢慢的困惑你的会被你领悟的。这时,建议学习html+css+js,缓解自己的压力,这个相对简单,简历信心。尤其是js,总结其实有相同的思路,可以结合着一起体会。
4、这些都感觉有80%了解就可以先放放了,现在在学习MySQL,也是先了解基础的。这个是干什么的,我可以用它做什么。因为之前装的集成环境。为什么感觉是凌乱的,我想告诉你的是,一是不要在自己没能力解决问题的时候死磕,浪费时间,丧失信心。这时候我们要做的是学习壮大自己,不要灰心。二是我本来觉得这一切都了解才是完整的。我们的目标也是要把这些都做好,这才是一个合格的PHP程序员。
5、这一切都顺利的话,你基本离预设的目标不远了,完成了整个学习的70%了。后面的是在之前的基础上升华。把HTML和css、js结合、静态文件和PHP结合、PHP和MySQL结合。这个阶段可能越到的问题会异常的多,一定要学会解决问题。网上很多都是答案,同样你要学会问问题。
6、这些之后你基本已经快到学习的尾声了,但还缺少经验。这时,你可以看一些网上开源的cms,例如织梦,国内用的多,越到问题好解决。看看一些视频(网上免费的很多),查漏补缺,总结归纳形成自己的知识体系。是时候该准备庆祝下自己这段的时间没有白费(一般2到3各月,看平时每天花的时间),基本成为一个合格的PHP程序员了。也该恭喜你了,其实并不那么难。坚持,坚持;努力,努力;学习,学习。
⑺ 知乎为什么用Python,而不用PHP
胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,非常方便快速成型。
⑻ 为什么在知乎php被黑的最惨烈
PHP的开发者社区风格非常稳健,从php4到php5,再到PHP7,乃至难产的php6版本,php这一路发展下来,语言本身在稳步的前进,同时对向下兼容处理很好。所以整个社区可以一脉相承的发展。
PHP6最然最终没有发布,但其核心的功能也都陆续迁移到了php5.x版本中。
最新刚刚发布的PHP7版本,那也是让人惊艳。我自己实际部署的效果,整个系统只做了一行代码的改动,就无缝迁移到了PHP7版本,系统负载直接降到了小数。这就是生产力。
我相信PHP7的普及会很快,因为确实会给厂商带来巨大的实惠:性能提升,可以减少机器,减少人力,系统稳定性也更好,也可以带来更多的收入。
PHP的手册,评论系统也是非常的完善。很多人黑PHP也仅仅停留在早期的概念上。php是有历史的包袱,存在不一致的地方。但每种语言都有自己的不足。
⑼ php要怎么自学才能去工作 知乎
你好,
你是想问如何学习php吧,其实学习php相对其他的计算机语言,还是比较容易入门的。
这里我建议你可以去网上买点相关的视频教程,进行学习。因为视频学习来更加系统和生动。尽量不要去视频网站去找视频教程,因为很难找到一整套视频。如果只是 这学学,那学学的,可能会更加迷糊了。
在你学习完一些基础的语法后,我建议你就可以开始学习框架了。这里,你不需要纠结是不是应该把原生的PHP代码学的多么透彻。你再怎么学,也不可能比那些实际做项目的人学的快的。所以你要做的,就是尽量入门,然后在实践中提升自己。刚刚说到框架的学习,我建议你可以去看看一些招聘网站上,你所在的城市,或者你想去发展的城市所要求的PHP工程师所需要的框架是什么。然后再去针对的去学习。我是先学习CI框架的,因为这个框架比较适合新人学习,用的人 也蛮多的
⑽ 为什么说PHP是首选的Web开发语言
作者:2gua
链接:https://zhuanlan.hu.com/p/19904737
来源:知乎
着作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
1. PHP是为Web而生的,天然与HTML、JavaScript有亲近感,也就是原生味儿十足。即使是PHP与HTML代码混杂,从某种角度而言,也能帮助初学者直观地了解Web技术机理,坏事有时候也是好事。另一方面,开源PHP的C风格、Unix/Linux范儿让其在Apache、Nginx等Web应用服务器上表现优异。总之,PHP与Web是浑然天成的结合方式。
2. 要掌握PHP,我建议从备受诟病的“代码凌乱”编程风格 -- 或许是从PHP与HTML混合编程开始,待直观了解Web开发技术之后,再考虑代码组织和结构的重构,这样有助于自己以更加原生的方式掌握Web的秘密。那么,什么是更加原生的方式呢?随手举个例子:典型的404状态码。
用PHP的实现(404.php、404.html):
<?php
header("HTTP/1.1 404 Not Found");
include("404.html");
exit;
?>
<!DOCTYPE html>
<html lang="zh-CN">
<head>
<meta charset="utf-8">
</head>
<body>
<p>404页面。</p>
</body>
</html>
再看看如http://ASP.NET MVC中的实现:
public ActionResult Details(int id)
{
return HttpNotFound();
}
虽然封装得很好,但是,跟PHP方式比较就知道,http://ASP.NET MVC中的实现确实比较抽象不够直观,而且是在控制器里直接定义和跳转的。在PHP中,显而易见,一下就明白了代码中header的含义:HTTP-Version、Status-Code、Reason-Phrase。
顺带说说Rails中的处理方式,抽象程度也很高:
render :template => '......', :status => 404
3. 与PHP类似的还有JSP,但JSP往往需要与JEE其他技术模块相配合使用,体系足够庞大,需要有长期准备。其他如http://ASP.NET MVC、Rails等框架的抽象度较高,也不建议作为首选。
4. 不得不提Node.js,Node.js是目前很火的技术,号称“全栈”的希望所在,常拿来跟PHP争论比较:什么并发、线程、进程等等。在这里无意评论孰优孰劣,但至少PHP可以让你多掌握一门技术,而不止是JavaScript。此外,PHP的大型业务的成熟应用案例可是比比皆是吖。
5. 那么,是不是该一直坚持指哪打哪的“代码凌乱”方式呢?当然不应该。PHP提供的OOP特性足够强大,在技能与理解程度达到一定高度时,完全可以以OOP的方式来组织代码。在PHP领域,各种框架非常多,比如Laravel、CI、FuelPHP、Yii、Symfony、Zend Framework等等,届时随便选一个都可以进行规范化开发。“代码凌乱”关键不在于工具本身,而在于人自己!要知道用Java也能写出烂代码。
6. PHP的资料非常丰富。
7. 最后,有一个稍稍题外话的看法,早前我还觉得在RESTful方式不断普及下,由于RESTful Web Services使用标准的 HTTP 方法(GET/PUT/POST/DELETE)来抽象Web服务能力,服务端的重点将移至MC,而服务端视图模版的应用会减少,客户端的支撑需求会越来越多。比如各种前端库、框架将得到快速推进,越来越多的需求处理会前置到前端来处理。但现在我感觉这种状态考虑得太过理想了,就像数据频繁大量更迭及处理的场景,更适合服务端(如模版引擎)完成;再具体地,又如大数据量的分页,如果都在浏览器中实现,性能就一定会有很大问题。此外,频繁Ajax调用、客户端缓存机制的缺失,也将引起种种问题,再进一步来看,单页面应用(SPA)也就并非适合每一个业务场景,服务端视图模版还是有比较多的适用领域的。