PHP语句是以分号结尾的

单行注释:  

//  C++风格的单行注释

#  shell 风格的单行注释  跟python差不多

多行注释:

/*......*/  c++风格的多行注释

常量定义:

1.define(常量名,值[,flase/true])

最后一个参数是常量名区分大小写设置. true时不区分常量名的大小写; 默认为false,程序要区分大小写

2.获取常量值

constant(常量名),  函数返回常量中保存的数据

3.  判断常量是否已经被定义 defined(常量名)

当常量名存在时候 返回ture  否则返回flase

常量名 常量值 说明
__FILE__ 当前的文件名 在哪个文件中使用,就代表哪个文件名称
__LINE__ 当前的行数 在代码的哪行使用,就代表哪行的行号
__FUNCTION__ 当前的函数名 在哪个函数中使用,就代表哪个函数名
__CLASS__ 当前的类名 在哪个类中使用,就代表哪个类的类名
__METHOD__ 当前对象的方法名 在对象中的哪个方法使用,就代表这个方法名
PHP_OS UNIX或WINNT等 执行PHP解析的操作系统名称
PHP_VERSION 5.5 当前php服务器的版本
TRUE TRUE 代表布尔值,真
FALSE FALSE 代表布尔值,假
NULL NULL 代表空值
DIRECTORY_SEPARATOR \或/ 根据操作系统决定目录的分隔符
PATH_SEPARATOR :或; 在linux上是一个":"号,WIN上是一个";"号
E_ERROR 1 错误,导致php脚本运行终止
E_WARNING 2 警告,不会导致php脚本运行终止
E_PARSE 4 解析错误,由程序解析器报告
E_NOTICE 8 非关键的错误,例如变量未初始化
M_PI 3.141592653 π 圆周率

PHP 定义变量

$变量名  =  变量的值

命名规程都是那样 跟C和python差不多

$a = 10   //直接赋值

$a = $b   //传值赋值

$b = &$a  //地址传递 跟c一样  就是传地址过去

echo   双引号输出和丹引号输出的区别

单引号:在单引号里括号的字符串中的变量名不按变量处理,而按照常量字符串来处理,所以,显示的字符串也是变量名本身不会显示变脸的值

双引号:在双引号中引括的字符串中的变量名按照变量处理,如果变量值变了,显示的字符串内容也会发生改变  tips:  双引号中的变量要用空格分开 不然会报错 找不到变量名

变量的作用域

1 局部变量

2 全局变量

3 静态变量

跟python 和c差不多

4 可变变量

$$变量名 = 值

$($变量名) = 值

例如:

$a  = "lalala"

$$a = 123   (就等于 $lalala = 123  )

PHP系统预定义变量

变量的名称 说明
$_SERVER['SERVER_ADDR'] 当前运行脚本所在的服务器的 IP 地址
$_SERVER['SERVER_NAME'] 当前运行脚本所在的服务器的主机名。如果程序运行在虚拟主机上,该名称由虚拟主机所设置的值决定
$_SERVER['REQUERT_METHOD'] 访问页面使用的请求方法。如GET,HEAD,POST,PUT等,如果请求的方式是HEAD,PHP脚本将输出头信息后中止(这意味着在产生任何输出后,不再有输出缓冲)
$_SERVER['REMOTE_ADDR'] 浏览当前页面的用户的 IP 地址
$_SERVER['REMOTE_HOST'] 浏览当前页面的用户的主机名,反向域名解析基于该用户的REMOTE_ADDR
$_SERVER['REMOTE_PORT'] 用户机器上连接到 Web 服务器所使用的端口号
$_SERVER['SCRIPT_FILENAME'] 当前执行脚本的绝对路径。 注意,如果脚本在CLI中被执行,作为相对路径,如file.php或者.../file.php,$_SERVER['SCRIPT_FILENAME']将包含用户指定的相对路径
$_SERVER['SERVER_PORT'] 当前运行脚本所在的服务器的端口号,默认是80,如果使用SSL安全连接,则这个值是用户设置的HTTP端口
$_SERVER['SERVER_SIGNATURE'] 包含了服务器版本和虚拟主机名的字符串。
$_SERVER['DOCUMENT_ROOT'] 当前运行脚本所在的文档根目录。在服务器配置文件中定义。
$_COOKIE 通过 HTTP Cookies 方式传递给当前脚本的变量的数组。这些Cookie多数是由执行PHP脚本时通过setCookies()函数设置的。
$_SESSION 包含与所有会话变量有关的信息,$_SESSION 变量主要应用于会话控制和页面之间值的传递
$_POST 包含通过POST方法传递的参数的相关信息,主要用于获取通过POST方法提交的数据
$_GET 包含通过GET方法传递的参数的相关信息,主要用于获取通过GET方法提交的数据
$GLOBALS 由所有已定义全局变量组成的数组。变量名就是该数组的索引。它可以称的上就是所有超级变量的超级集合。
$_FILES 通过 HTTP POST 方式上传到当前脚本的项目的数组
$_REQUEST 默认情况下包含了 $_GET,$_POST 和 $_COOKIE 的数组。
$_ENV 通过环境方式传递给当前脚本的变量的数组。
$php_errormsg 前一个错误信息
$HTTP_RAW_POST_DATA 原生POST数据
$http_response_header HTTP 响应头
$argc 传递给脚本的参数数目
$argv 传递给脚本的参数数组

PHP学习第一天的更多相关文章

  1. Magento学习第一课——目录结构介绍

    Magento学习第一课--目录结构介绍 一.Magento为何强大 Magento是在Zend框架基础上建立起来的,这点保证了代码的安全性及稳定性.选择Zend的原因有很多,但是最基本的是因为zen ...

  2. YII2学习第一天

    YII2学习第一天,之前稍微看了看TP,感觉和自己的理念不是很符合,然后转学YII2了. 使用的文档是https://github.com/yiisoft/yii2/tree/master/docs/ ...

  3. Java学习第一天

    Java学习第一天 对于网络管理员或者黑客必须知道的八个cmd命令 详情请参考:http://www.2cto.com/os/201608/533964.html          nbtstat  ...

  4. 一、Android学习第一天——环境搭建(转)

    (转自:http://wenku.baidu.com/view/af39b3164431b90d6c85c72f.html) 一. Android学习第一天——环境搭建 Android 开发环境的搭建 ...

  5. web学习第一章

    web学习第一章   我是大概9月10日开始走上IT之路的,一开始学习了小段时间的自动化办公软件, 昨天我开始学习客户端网页编程,我了解什么是WEB,一些比较老古董的计算模式和发展历史,印象最让我深刻 ...

  6. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  7. swift系统学习第一章

    第一节:变量,常量,类型推断,字符,字符串 //swift学习第一节 /* 变量 常量 类型推断 字符 字符串 */ import UIKit //变量 var str = "swift&q ...

  8. (译) 强化学习 第一部分:Q-Learning 以及相关探索

    (译) 强化学习 第一部分:Q-Learning 以及相关探索 Q-Learning review: Q-Learning 的基础要点是:有一个关于环境状态S的表达式,这些状态中可能的动作 a,然后你 ...

  9. [未完成]WebService学习第一天学习笔记

    [未完成]WebService学习第一天学习笔记[未完成]WebService学习第一天学习笔记

  10. (转)ASP.NET MVC 学习第一天

    天道酬勤0322   博客园 | 首页 | 发新随笔 | 发新文章 | 联系 | 订阅  | 管理 随笔:10 文章:0 评论:9 引用:0 ASP.NET MVC 学习第一天 今天开始第一天学习as ...

随机推荐

  1. springMVC容器和Spring容器

    前段时间有人问我,为什么一定要在web.xml中配置spring的listener呢? <listener> <description>spring监听器</descri ...

  2. ffplay源码分析3-代码框架

    ffplay是FFmpeg工程自带的简单播放器,使用FFmpeg提供的解码器和SDL库进行视频播放.本文基于FFmpeg工程4.1版本进行分析,其中ffplay源码清单如下: https://gith ...

  3. 看 Netty 在 Dubbo 中如何应用

    目录: dubbo 的 Consumer 消费者如何使用 Netty dubbo 的 Provider 提供者如何使用 Netty 总结 前言 众所周知,国内知名框架 Dubbo 底层使用的是 Net ...

  4. [转]SQL Server Reporting Services - Timeout Settings

    本文转自:https://social.technet.microsoft.com/wiki/contents/articles/23508.sql-server-reporting-services ...

  5. MVC用非Entity Framework将数据显示于视图(二)

    这篇<MVC用非Entity Framework将数据显示于视图> http://www.cnblogs.com/insus/p/3364235.html 也算是MVC视图显示数据库的数据 ...

  6. C# int? 关键字

    1.int?  关键字说明 (1).int? 表示一个int类型,且该int类型可空,如果不加?的话,那么int类型的默认值为0,不能赋null值,代码如下: int aa = null; (2).当 ...

  7. Hibernate高效查询,只查询部分/指定字段

    公司使用 DetachedCriteria detachedCriteria = DetachedCriteria.forClass(PeBulletin.class); detachedCriter ...

  8. oracle 恢复错误修改数据 寒冬冒冷汗!!

    今天,由于一时疏忽,造成了对正式数据库修改了用户密码的情况.寒冬冒冷汗!!! 立即上网找修改方法,万幸找到,也修改回来,特此在此留个记忆!! create table t_table_new----这 ...

  9. [javaSE] 看博客学习多线程的创建方式和优劣比较和PHP多线程

    通过实现Runnable接口创建线程 获取Thread对象,new出来,构造函数参数:Runnable对象 Runnable是一个接口,定义一个类MyRunnable实现Runnable接口,实现ru ...

  10. Linux创建用户等操作

    转自: https://www.linuxidc.com/Linux/2017-06/144916.htm 与大家分享下Linux系统中创建用户.设置密码.修改用户.删除用户的命令,希望对你有所帮助. ...