因项目紧急只留给了我4周时间学习php。谨以此文记录我的php学习历程,仅供参考,若有错误请指正。

之前对php有过一些了解,一些语法和习惯和C#差距有些大,所以第一天准备对php中的符号有个全面的了解。在此感谢网上的一些资料是我轻松的找到我所要的。

  • $,变量定义的标志符号,PHP 中的所有变量都是以 $ 符号开始的。我们一般都能看到类似代码,php中变量没有声明类型的限制这点与js类似。
  1. $var_name = value;
    <?php
    $number = 16;
    echo $number
    ?>
  • $this 在php面向对象编程中很常见的一个符号, 其意义是实例化后的具体对象,一般在class中的函数中来引用本类已定义的变量(方法),常见用法在子类使用父类中的方法(变量)。
  • => 是数组成员访问符号(感谢百度)

    -> 是对象成员访问符号

    比如:

    $array = array("site map"=>"map.php"); //定义了一个数组,包含一个数组成员:键名为site map,值为map.php
    $this->$name = $value

    $this 在php语言里是个特定的变量,它代表了类本身,->是访问其类成员的操作符,$this->$name = $value,这句代码意思是:将当前类的name变量的值设置为 $value.

  • :: 类中静态方法和静态属性的引用方法,类似与C#中对静态方法的引用

    例如

    class Test{
    public static $test = 1;
    public static function test(){
    }
    }

    可以不用实例化对象直接使用 Test::$test 来取得$test属性的值
    静态方法调用也同理Test::test(); 直接调用静态方法test  -------------(百度知道)

  • _ 与 _ _但下划线与双下划线。 加一个为私有的,加两个一般都是系统默认的,系统预定义的,即所谓:“魔术方法”与“魔术常量”
    PHP双下划线函数即“魔术方法”:
    1、 __construct、__destruct
    __construct 构造方法,当一个对象创建时调用此方法。
    __destruct 析构方法,PHP将在对象被销毁前(即从内存中清除前)调用这个方法。如果你想明确地销毁一个对象,你可以给指向该对象的变量分配任何其它值.通常将变量赋值勤为NULL或者调用unset.
    2、__clone
    PHP5中的对象赋值是使用的引用赋值,此时,对象会自动调用__clone魔术方法。
    3、__toString
    __toString方法在将一个对象转化成字符串时自动调用,比如使用echo打印对象时。
    (出处:http://zbl19830728.blog.163.com/blog/static/4777639020113832554982/)(寻找自百度)

    PHP起止为双下划线的常量即为“魔术常量”:
    __LINE__文件中的当前行号。
    __FILE__文件的完整路径和文件名。
    __DIR__文件所在的目录。如果用在被包括文件中,则返回被包括的文件所在的目录。它等价于 dirname(__FILE__)。除非是根目录,否则目录中名不包括末尾的斜杠

  • &符号 引用,比较麻烦的一个地方,可以参考(http://blog.snsgou.com/post-245.html),我的理解如果加&符号,仅相当于给一个变量别名如:                                                                                         
       $oGoods=&$this->app->model('brand'); //oGoods 实际就是后面一长串的别名,而并非是一个新的变量

以上就是第一天需要配置环境之类的的学习内容不是很多,不过以上符号搞明白基本就可以看明白代码了。

30天的php学习之路——第一天开端的更多相关文章

  1. [EntLib]微软企业库5.0 学习之路——第一步、基本入门

    话说在大学的时候帮老师做项目的时候就已经接触过企业库了但是当初一直没明白为什么要用这个,只觉得好麻烦啊,竟然有那么多的乱七八糟的配置(原来我不知道有配置工具可以进行配置,请原谅我的小白). 直到去年在 ...

  2. Vue学习之路第一篇(学习准备)

    1.开发工具的选择 这个和个人的开发习惯有关,并不做强求,厉害的话用记事本也可以.但是我还是建议用人气比较高的编辑工具,毕竟功能比较全面,开发起来效率比较高. 我之前写前端一直用的是sublimete ...

  3. ExtJS学习之路第一步:对比jQuery,认识ExtJS

    最近纷杂的事情比较多了,奔波ing!所以,Node.js 和Canvas动画系列都停止了,等稳定了再重拾书本继续学习!因为某种原因最近在看ExtJS,分享下学习的心得,希望对同道中人有所帮助. 第一用 ...

  4. GIT学习之路第一天 简介及其安装

    本文参考廖雪峰老师的博客进行总结,完整学习请转廖雪峰博客 Git是什么? Git是目前世界上最先进的分布式版本控制系统(没有之一). Git有什么特点?简单来说就是:高端大气上档次! 那什么是版本控制 ...

  5. python学习之路 第一天

    1.Python 3 安装. 2.Python 开发工具 PyCharm安装. 3.print("hello world!")  #打印hello world!  注:Python ...

  6. #Java学习之路——第一部分总结

    今天主要是Java的入门以及idea的安装说实话,没有什么有技术含量的东西,发的也全是皮毛,但是在数组部分有很多细节需要注意,在JDK环境变量配置的地方不光光只有windows 的环境配置,还要掌握补 ...

  7. python学习之路-第一天-接触python

    我的入门就决定用<简明Python教程> <简明Python教程> 1. python的优势 简单:专注于解决问题而不是关注语言本身 易学:容易上手 开源.免费 可移植性非常强 ...

  8. java 学习之路第一节

    一.安装mysql驱动:http://mvnrepository.com/search?q=mysql-conn 二.看数据库中有什么表安装:navicat for MySQL 文件类写数据库查询: ...

  9. Python学习之路-Day1-Python基础

    学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...

随机推荐

  1. angularjs集成requirejs

    其实说成使用requirejs加载angularjs应用会更贴切一些 <body> <span ng-controller="homeController"> ...

  2. 【Python五篇慢慢弹(5)】类的继承案例解析,python相关知识延伸

    类的继承案例解析,python相关知识延伸 作者:白宁超 2016年10月10日22:36:57 摘要:继<快速上手学python>一文之后,笔者又将python官方文档认真学习下.官方给 ...

  3. 【NLP】揭秘马尔可夫模型神秘面纱系列文章(三)

    向前算法解决隐马尔可夫模型似然度问题 作者:白宁超 2016年7月11日22:54:57 摘要:最早接触马尔可夫模型的定义源于吴军先生<数学之美>一书,起初觉得深奥难懂且无什么用场.直到学 ...

  4. 解决新版Android studio导入微信支付和支付宝官方Demo的问题

    最近项目要用到支付宝支付和微信支付,本想使用第三方支付框架ping++或者BeeCloud的,但是由于他们的收费问题,让我望而却步,而且公司给了相应的公钥.私钥和APPID等,所以就用下开放平台的呗. ...

  5. WebComponent魔法堂:深究Custom Element 之 面向痛点编程

    前言  最近加入到新项目组负责前端技术预研和选型,一直偏向于以Polymer为代表的WebComponent技术线,于是查阅各类资料想说服老大向这方面靠,最后得到的结果是:"资料99%是英语 ...

  6. 卷积神经网络提取特征并用于SVM

    模式识别课程的一次作业.其目标是对UCI的手写数字数据集进行识别,样本数量大约是1600个.图片大小为16x16.要求必须使用SVM作为二分类的分类器. 本文重点是如何使用卷积神经网络(CNN)来提取 ...

  7. [WinForm] DataGridView 绑定 DT && ComboBox 列绑定 Dict

    一  需求介绍 一般像枚举类型的数据,我们在数据库里存储着诸如(1.2.3.4-)或者("001"."002"."003"-)此类,但是界面 ...

  8. C#开发微信门户及应用(37)--微信公众号标签管理功能

    微信公众号,仿照企业号的思路,增加了标签管理的功能,对关注的粉丝可以设置标签管理,实现更加方便的分组管理功能.开发者可以使用用户标签管理的相关接口,实现对公众号的标签进行创建.查询.修改.删除等操作, ...

  9. Json map

    1. 返回数据形式 Class returnMsg{ boolean success; String   msg; String   errorMsg; } 2.问题 当msg中的数据由对象 或 集合 ...

  10. Exception thrown by the agent : java.rmi.server.ExportException: Port already in use

    今天有个应用一直起不来,感觉配置都对啊,奇了怪了.看日志发现如下: STATUS | wrapper | 2017/01/04 08:09:31 | Launching a JVM...INFO | ...