因项目紧急只留给了我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. Python标准模块--import

    1 模块简介 作为一个Python初学者,你首先要学会的知识就是如何引入其它模块或者包.但是,我发现有些开发者虽然使用Python很多年,依然不了解Python引入机制的灵活性.这篇文章,我们就会研究 ...

  2. Java Collection开发技巧

    Java Collection(集合) 集合中的一些技巧: 通过Collections类的静态方法,可以对集合进行一些操作 1 java.util.List<Integer> number ...

  3. Oracle PL/SQL随堂笔记总结

    1.pl/sql编程 2.存储过程 3.函数 4.触发器 5.包 6.pl/sql基础 -定义并使用变量 7.pl/sql的进阶 8.oracle的视图 1.pl/sql编程 1.理解oracle的p ...

  4. Javascript图片预加载详解

    预加载图片是提高用户体验的一个很好方法.图片预先加载到浏览器中,访问者便可顺利地在你的网站上冲浪,并享受到极快的加载速度.这对图片画廊及图片占据很大比例的网站来说十分有利,它保证了图片快速.无缝地发布 ...

  5. TFS工作项数据统计及相关数据库结构分析

    今天为客户的质量管理部门人员提供TFS咨询过程中,客户的质量管理专家基于TFS提出了一个比较棘手的数据统计需求.需求是这样,客户的数十个软件项目通过质量管理部按照年度版本计划进行软件产品系统的发布,因 ...

  6. 2.EF中 Code-First 方式的数据库迁移

    原文链接:http://www.c-sharpcorner.com/UploadFile/3d39b4/code-first-migrations-with-entity-framework/ 系列目 ...

  7. android 模拟2048

    利用节日休息时间在ANDROID上进行学习并模拟2048游戏. 效果如下图: 制作思路: 1.画出2048游戏主界面,根据手机屏幕宽高度进行计算并画出每个方块的大小. @Override protec ...

  8. C#中HttpClient使用注意:预热与长连接

    最近在测试一个第三方API,准备集成在我们的网站应用中.API的调用使用的是.NET中的HttpClient,由于这个API会在关键业务中用到,对调用API的整体响应速度有严格要求,所以对HttpCl ...

  9. Socket初识

    基础概念 Socket,套接字,本质是网络编程接口.提供网络通信的能力,实现不同虚拟机或不同计算机之间的通信.面向客户/服务(C/S)模型,socket是应用层和传输层之间的中间软件抽象层: 顶上三层 ...

  10. autofac 组件的实例范围

    实例范围决定如何在请求之间共享服务. 原文地址:http://docs.autofac.org/en/latest/lifetime/instance-scope.html 每个依赖一个实例 使用这个 ...