1、引用文件的方法有两种:require 及 include

  require 的使用方法如 require("MyRequireFile.php"); 。这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份。常用的函数,亦可以这个方法将它引入网页中。

  include 使用方法如 include("MyIncludeFile.php"); 。这个函数一般是放在流程控制的处理部分中。PHP 程序网页在读到 include 的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化。

2、注释

<?php
  echo "这是第一种例子。\n"; // 本例是 C++ 语法的注释
  /* 本例采用多行的
  注释方式 */
  echo "这是第两种例子。\n";
  echo "这是第三种例子。\n"; # 本例使用 UNIX Shell 语法注释
  ?>

  注释:解释的信息是what和why。

3、常量类型

  PHP 在常量中定义了以下一些常量。

  __FILE__
  这个默认常量是 PHP 程序文件名。若引用文件 (include 或 require)则在引用文件内的该常量为引用文件名,而不是引用它的文件名。

  __LINE__
  这个默认常量是 PHP 程序行数。若引用文件 (include 或 require)则在引用文件内的该常量为引用文件的行,而不是引用它的文件行。

  PHP_VERSION
  这个内建常量是 PHP 程序的版本,如 '3.0.8-dev'。

  PHP_OS
  这个内建常量指执行 PHP 解析器的操作系统名称,如 'Linux'。

  TRUE
  这个常量就是真值 (true)。

  FALSE
  这个常量就是伪值 (false)。

  E_ERROR
  这个常量指到最近的错误处。

  E_WARNING
  这个常量指到最近的警告处。

  E_PARSE
  本常式为解析语法有潜在问题处。

  E_NOTICE
  这个常式为发生不寻常但不一定是错误处。例如存取一个不存在的变量。

  这些 E_ 开头形式的常量,可以参考 error_reporting() 函数,有更多的相关说明。

  当然在程序写作时,以上的默认常量是不够用。define() 的功能可以让我们自行定义所需要的常量。见下例

<?php
    define("COPYRIGHT", "Copyright &copy; 2000, netleader.126.com");
    echo COPYRIGHT;     echo __FILE__;     ?>

4、声明变量(区分大小写)

<?php
/**
* @file variable.php
* @author suguolong
* @date 2015/07/29 16:49:08
* @brief
*
**/ /* 定义字符串变量 */
$mystring = "我是字符串";
$WilsonPeng = "真是认真的作者";
$NewLine = "换行了\n"; /* 定义整型变量 */
$int1 = 38;
$int2 = 49;
$hexint = 0x10; /* 定义浮点变量 */
$float1 = 1.732;
$float2 = 1.4E+2; /* 定义数组变量 */
$MyArray1 = array("子", "丑", "寅", "卯");
$MyArray2 = array(
"地支" => array("子", "丑", "寅", "卯"),
"生肖" => array("鼠", "牛", "虎", "兔"),
"数字" => array(1, 2, 3, 4)
); /* 类的定义 */
class foo {
function do_foo () {
echo "Doing foo.\n";
}
} /* 类的使用 */
$bar = new foo;
$bar -> do_foo ();
$bar -> do_foo ();
$bar -> do_foo (); /* 定义布尔值 */
$booleanval_true = true;
$booleanval_false = false; /* 使用变量 */
echo "boolean value of true: \n";
echo $booleanval_true;
echo "\n"; echo "boolean value of false: \n";
echo $booleanval_false;
echo "\n"; /* vim: set expandtab ts=4 sw=4 sts=4 tw=100: */
?>
[suguolong@cp01-rdqa-dev004.cp01.baidu.com sugl]$ php variable.php
Doing foo.
Doing foo.
Doing foo.
boolean value of true:
1
boolean value of false: [suguolong@cp01-rdqa-dev004.cp01.baidu.com sugl]$

5、变量的使用

  在 PHP 的程序执行时,系统会在内存中保留一块全局变量的区域。实际运用时,可以透过 $GLOBALS["变量名称"] 将需要的变量取出。

  $GLOBALS 数组是 PHP 程序中比较特殊的变量,不必定义,系统会自动匹配相关的变量在里面。在函数中,也不必管 $GLOBALS 数组是否已经做全局定义,就可以直接使用了。

  和 $GLOBALS 变量类似的还有 $php_errormsg 字符串变量。若 PHP 的配置文件 (php.ini/php3.ini) 中的 track_errors 选项打开的话,会有全局变量 $php_errormsg 可以看到错误的信息。

  在 PHP 中,全局变量的有效范围 (scope) 仅限于主要程序中,不会影响到函数中同名的变量,也就是全局变量与局部变量互不侵犯。若要变量能通透到函数中,就要用到 $GLOBALS 数组或是使用 global 定义。

  至于用户在 FORM 中输入的资料,要怎么处理呢?要是在 PHP 的配置文件中,track_vars 设为 On 时,直接使用变量名字就好了。如下例,next.php 在执行时,系统会自动产生两个变量 $username 及 $sex,直接使用就好了,比起传统的 CGI 要自己解析,PHP 实在是太神奇了。

<form action=next.php method=post>
姓名: <input type=text name="username"><br>
性别: <input type=text name="sex"><br>
<input type=submit>
</form>

php学习笔记(1)的更多相关文章

  1. js学习笔记:webpack基础入门(一)

    之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...

  2. PHP-自定义模板-学习笔记

    1.  开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2.  整体架构图 ...

  3. PHP-会员登录与注册例子解析-学习笔记

    1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...

  4. 2014年暑假c#学习笔记目录

    2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...

  5. JAVA GUI编程学习笔记目录

    2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...

  6. seaJs学习笔记2 – seaJs组建库的使用

    原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...

  7. CSS学习笔记

    CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...

  8. HTML学习笔记

    HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...

  9. DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记

    今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...

  10. ucos实时操作系统学习笔记——任务间通信(消息)

    ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...

随机推荐

  1. new到底做了什么?

    下面是一个实例化自定义的对象,我们将要对他进行分析 //定义构造函数 function A(){ this.b = 1 //在这个对象里增加一个属性 //不可以拥有返回对象的return语句 } va ...

  2. html标签总结。

    接触了一段时间的html和css,发现了其中的乐趣.在写代码时一定要仔细,很有可能一个细微的错误便会导致页面的错误 总结了一下html标签. <html></html> 创建一 ...

  3. UIScrollView中添加一个视图,实现让其始终固定在某个位置

    ScrollView中添加一个视图,实现让其始终固定在某个位置,如最底部的位置.方法是自定义一个继承UIScrollView,重写它的layoutSubviews方法.代码如下: #import &q ...

  4. mysql-5.7.10-winx64 MySQL服务无法启动,服务没有报告任何错误的解决办法

      总结报错原因:在my.init文件下新增data目录(datadir = F:\mysqldata ) 最新解压版本的mysql 解压安装的时候报错D:\mysql\mysql-5.7.10-wi ...

  5. php7 install memcached extension

    #download source code package from git $ git clone https://github.com/php-memcached-dev/php-memcache ...

  6. leetcode Combination Sum II python

    Given a collection of candidate numbers (C) and a target number (T), find all unique combinations in ...

  7. 读jQuery源码 jQuery.data

    var rbrace = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/, rmultiDash = /([A-Z])/g; function internalData( elem, n ...

  8. Ubuntu eclipse :An error has occurred. See the log file

    安装eclipse: sudo apt-get install eclipse-platform 调整java: sudo update-alternatives --config java 启动: ...

  9. shell 学习笔记1501-1800

    .巧用bash的{}扩展备份目录: cp file.txt{,.bak} .利用at执行一次性命令: echo "ls -l" | at midnight #Execute a c ...

  10. 柯南君:看大数据时代下的IT架构(8)消息队列之RabbitMQ--案例(topic起航)

    二.Topic(主题) (using the Java client) 上一篇文章中,我们进步改良了我们的日志系统.我们使用direct类型转发器,使得接收者有能力进行选择性的接收日志,,而非fano ...