学习完PHP和MySQL之后应该学习什么?
一,js方面
∴原生js能不能看懂?原型链,this指向是否明白?es6
∴能不能写简单的特效比如轮播图
∴Nodejs了不了解?至少搞明白异步编程思想
二,html方面
∴vuejs angular等前端框架至少会一个吧
∴html5常用标签css3常用属性都要了解掌握
∴移动端自适应等其他常见前端问题解决办法
∴其他:若能结合js vue nodejs html写一个前后端分离的简单的网站那是极好的!
三,服务器linux方面>重点难点
∴熟悉apache nginx服务器以及他们和php结合工作的原理,熟悉他们的优化配置,熟悉linux下其他常用软件安装和配置优化mysql redis mongodb memcache等 。
∴熟练使用linux常用shell指令,能编写简单的shell脚本,比如定期数据库备份
∴熟悉负载均衡配置,根据实际情况合理设计,熟悉数据库分库分表 主从复制。业内常见的解决方案,比如阿里mycat 。其中的原理,比如分库后事务一致性怎么解决?
∴http协议,TCP/IP协议,socket网络编程这部分可以参考php框架swoole和nodejs网络编程
∴多进程多线程编程,虽然php一般用不到,但作为程序员还是必须了解的
∴高并发下加锁的问题,防止死锁产生。比如商品秒杀
∴常用的队列软件熟悉一个即可,如rabbitmq
∴数据库索引优化和sql语句优化等这就不说了必备的
∴其他,如cdn,oss等
四,php方面
∴熟练使用至少两个框架,建议至少熟悉laravel现代化的php框架,里面有很多设计思想。
∴高并发下快速定位代码,找到解决方案。比如之前有公司业务有同事将一个两万多条sql记录放到了redis每次拿出来循环执行任务,导致服务器访问缓慢。大量502虽然找到了,但没找到之前还真不知道毕竟别人写的不熟悉。再比如数据库某个字段没加索引每次查询需要两三秒。
五,其他
∴有时间建议学习一门其他语言。如果你足够牛就学c++方面的,其次java,然后golang,最后python。不过大部分学习php得程序员都是考虑到它简单好用,而且按照目前的形式加上难易程度。建议golang或python
最后,这些仅仅是个人在工作中遇到的需要解决的用到的知识或有些是自己也还在学习探索中,仅属于一人之见,仅供参考。依照个人工作需要,遇到问题解决问题才是最快的学习方案。而且学的多当然工资高,压力也大,所以还是看个人了。我就喜欢清闲点?
php表单提交和重来按钮如何居中?急?
使用css来进行居中,具体来说有三种方法
1、margin:0 auto;适用于块级元素,并且对浮动元素和定位元素无效
2、text-align:center
适用于图片、按钮、文字等行内元素(display为inline或inline-block),写在父元素上对子元素有效
3、使用浮动配合相对定位来进行水平居中
浮动居中的原理:把浮动元素相对定位到父元素宽度50%的地方,但这个时候元素还不是居中的,而是比居中的那个位置多出了自身一半的宽度,这时就需要他里面的子元素再用一个相对定位,把那多出自身一半的宽度拉回来,因为相对定位正是相对于自身来定位的,所以自身一半的高度只要把left或right设为50%就可以得到了。
如果主攻后端,在2018年应该学java,还是PHP,还是Python?为什么?
1.如果只想做后端开发,建议学习Java,因为Java是最适合做后端开发的语言,有大量成熟的后端框架,应用广泛。
2.如果还想向其它方面发展,可以学习Python,Python目前的定位是快速应用,可以做很多方向的开发,不局限于后端。
3.PHP不了解。
4.与其花时间纠结学什么,不如尽快确定一个方向,学什么并不重要,学到一定层次以后,换一种语言是很容易的事。
php怎么实现定位?除了ip?
可以使用html5定位,之后通过js发给php,php接受的header里面除了ip以外没有别的办法可以分析出具体位置了。但是html5是根据电脑所在地址分析的,如果设备支持gps就可以通过gps拿到对方精确位置。
Click the button to get your coordinates:
学PHP该怎样做好职业规划?
首先来说,PHP作为一门脚本语言,上手的确很快,项目开效率也高,但随之而来的就是PHP同行业的竞争越来越大(同质化严重),很多PHPer很快就能触碰到天花板。
那PHPer该如何持久发展呢?这里我给的建议就是不要把自己局限在PHP上面。因为PHP上手快,很多开发人员其实计算机基础掌握并不牢固,很多计算机原理是不知道的,再者一些开发上的高级概念了解不够透彻。我建议你掌握一门更高级的语言,如:Java、C++都是可以去考虑的。
PHP职业路线如何走呢?作为从事PHP 近10年的开发者,我是这样规划的:
* Step1、深耕技术,成为领域“高手”,这里不敢说成为“专家”,但你需要成为团队的技术骨干,要求掌握知识也不少,具体如下:
计算机基础知识
计算机网络知识(特别是网络协议这块)
前端知识:DIV+CSS、JS/JQ/VUE、Ajax、H5
数据库知识:SQL、主从同步、读写分离、安全、调优
PHP知识:先学会主流框架,同时也要了解框架的实现原因
其它高级语言掌握
* Step2、了解公司业务,要非常了解你当前公司的业务,如果你对公司业务不清楚,你做出来的项目品质这块肯定是有问题的,业务驱动技术架构;
* Step3、业务驱动:项目负责人、项目经理
当你的能力及业务能力比一般人要强时,相信你能胜任项目经理岗了,此时你不需要专精去写代码了,但你需要对任务进行合理拆分,让项目成员去做,你更多的是做沟通、协调、技术攻关相关的工作;
* Step4、技术驱动:架构师
上面第3步是基于业务驱动的,可以做项目经理,但如果你一心痴迷技术,那你可以偏架构一点,架构师是技术驱动的,对技术领域要求很多,需要有前瞻性;
* Step5、CTO级别
CTO级别一般很难达到,当然小公司还是比较容易的,CTO分两种:写代码的、不写代码的,看你个人定位;
以上是PHPer的规划,其实开发人员的路子很多,不要把自己局限住。如果对技术有兴趣,我的头条号里基本都是技术原创,可以看一下哦,希望对你有帮助。