PHP(一)
最近一段时间一直忙于新版本的开发工作,所以虽然自己脑中有一些想法,但是苦于没有足够的时间去写下来。好了,昨天终于将大体的功能开发完成,时间上面也不会那么的紧张了。下来我想要好好的梳理一下,自己最近一段时间在学习PHP过程的一些收获和感受!其实,说起为什么自己会想到要学习Php呢?一方面是因为Php现在在国内实在是太火了,另一方面呢?是因为自己的好奇心,以前我自己一直是做前端开发的,所以我一直想要弄明白service端到底是怎样的一个开发流程呢?在《黑客与画家》里面作者说到一个很普遍的现象,那就是国内很多的开发人员一直都认为只要你精通一门开发语言,那么其他的都是相同的。其实说到这个观点的对错呢?应该是一半一半的,首先语法概念、设计思想方面肯定都是大同小异的,但是他们针对性就不一样了,每种开发语言都是针对一种专门的现状情况去开发的,试想一下如果c语言强大到能够高效的处理任何问题,那么就不会产生其他的高级语言了。
好了,废话不多说,让我们开发PHP之旅吧!首先呢?我们需要搞清楚到底什么是PHP,PHP又是基于解决什么样的现状情况才开发出来的呢?只有明白这些我们才知道,我们学习PHP之后可以更加高效的解决什么的开发问题呢?首先php是个人主页的缩写,他是服务端的一种脚本语言,主要适用于Web开发的。其实说到Web开发我们可以使用HTML快速的开发出一个页面,但是这样的页面交互性是很差的,在处理数据方面也是不太方便的,所以PHP就是在这种情况下产生的。好了,我们明白PHP主要的用途之后,我们就可以比较细致的看一下它的具体语法了。
其实,我的第一感觉就是PHP的弱类型性,之前我接触比较多的应该还是C#,JAVA等,在这些语言里面每个变量的定义都需要指定一个特定的类型,而且一旦指定之后,在程序运行的时候不允许被修改的。但是在PHP里面呢?我们只需要通过$美元符号就可以定义一切类型的变量,同时在运行的时候,你也是可以对其进行修改。当然了,在PHP里面也会有控制语句,循环语句等一些其他语言该有的东西。然后我们可能想要弄明白的一件事情可能就是一个Web页面是怎样和一段脚本发生交互的呢?他们之间又是这样去传值的呢?其实这在Php里面实现起来是很简单的,php里面传值的方式有两种:GET/POST,通过get的方式呢?我们需要就页面里面所需要传送的数值拼接到一个URL的路径后面,然后我们在脚本里面就可以通过键值对的方式获取得到了,这就是为什么很多项目开发里面我们需要事先定义很多的协议文档,因为那些规定的字段,在PHP脚本解析里面都会被用作Key来访问Value的。当然通过POST的方式在脚本里面处理也是一样的,那么这两者到底有什么区别呢?首先get方式由于是拼接到url后面所以是明文的,不安全。然后post呢?相对来说安全一点,那么我们在页面传值的时候,又是怎样去区分它们的呢?我们只需要在页面的Action里面指定预定处理的脚本,在method里面我们可以选择传值的方式,可以是get、post.明白这些之后,我们大体就可以开发出简单的具有交互性的页面了。
然后我们需要了解PHP里面一些更高级的东西,包括常用的内置函数、模板等,我们先来说一说一些常用的函数吧!字符串处理函数,数组处理函数,一些判断函数等。具体细节我们放到下一节吧!
随机推荐
- 将Excel中数据导入数据库(一)
在工作中经常要将Excel中数据导入数据库,这里介绍一种方法. 假如Excel中的数据如下: 数据库建表如下: 其中Id为自增字段: Excel中数据导入数据库帮助类如下: using System; ...
- 阅读jQuery源码的18个惊喜
注释:本文使用$.fn.method指代调用一系列选中的元素的方法.例如,$.fn.addClass,指代$('div').addClass(‘blue’) 或 $('a.active’).addCl ...
- jquery css快捷方法
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- C# 发送邮件方法
发送邮件所用的核心知识点 微软封装好的MailMessage类:主要处理发送邮件的内容(如:收发人地址.标题.主体.图片等等) 微软封装好的SmtpClient类:主要处理用smtp方式发送此邮件的配 ...
- Excel 统计IP
参考资料: 1:http://zhidao.baidu.com/question/127624244.html 其中的公式改成<1就可以了. 2:http://support.office.mi ...
- Solaris从安装光盘安装软件
系统安装完成后默认没有安装GCC 挂载系统盘后,所安装的软件就在/cdrom/sol-10-811-x86/Solaris_10/Product文件夹下可以查看下关于GCC的软件包 #ls -l | ...
- javaSE27天学习目录
第一阶段(java基础知识) 计算机基础知识 Java开发环境的搭建和应用 机制转换 有符号数据表示法(原码.反码.补码) Java语句基础(关键字.标识符.注释.常量.变量.数据类型.运算符) ...
- centos6.5_x86_64安装Adobe Flash Player
对x86_64的CentOS6.5系统,安装FireFox的Adobe Flash Player插件 安装插件,终端下输入命令:#wget http://linuxdownload.adobe.com ...
- CSS控制div宽度最大宽度/高度和最小宽度/高度
在网页制作中经常要控制div宽度最大宽度/高度或者最小宽度/高度,但是在IE6中很多朋友都会遇到不兼容的头疼问题,包括我也经常遇到这样的问题,在百度查了很多都没法解决,后来在一个论坛上学习到,在这里跟 ...
- 小米、MIUI、sqlite3: not found--miui安装sqlite3
以下为miui安装sqlite3的教程: 1.从AVD中将sqlite3导入到PC的D:\android目录下(AVD的版本需要和手机操作系统的版本相同). #adb pull system/xbin ...