php知识整理
unset()函数销毁变量
<?php
// 销毁单个变量
unset ($var);
// 销毁单个数组元素
unset ($arr['a']);
// 销毁多个变量
unset ($var1, $var2, $var3);
?>
isset() : 检测变量是否设置。
bool isset ( mixed $var [, mixed $... ] )
检测变量是否设置,并且不是 NULL。如果 var
存在并且值不是 NULL
则返回 TRUE
,否则返回 FALSE。
如果已经使用 unset() 释放了一个变量之后,它将不再是 isset()。若使用 isset() 测试一个被设置成 NULL 的变量,将返回 FALSE。同时要注意的是一个 NULL 字节("\0")并不等同于 PHP 的 NULL 常数。
php入口文件
文件入口一般分为单文件入口和多文件入口,当然也有可能有其它的文件入口没见过。
单文件入口当然是指网站访问始终都是有访问index.php这个文件,但关系到里面显示的内容却是根据后台的参数来加载,比如:http://IP/index.php? Conttoller=index&action=show&id=1(controller有时简写成c,action有时会简写成a,model简写成m,view简写成v)
多文件入口当然是指网站里面除了index.php文件名,还有其它文件访问,比如同一个网站下有index.php,about.php………..等。
入口文件主要完成:
·定义框架路径、项目路径(可选)
·定义调试模式和应用模式(可选)
·定义系统相关常量(可选)
·载入框架入口文件(必须)
explode() 函数把字符串打散为数组。(explode是爆炸的意思)
<?php
$str = "Hello world. I love Shanghai!";
print_r (explode(" ",$str));
?>
输出结果:Array ( [0] => Hello [1] => world. [2] => I [3] => love [4] => Shanghai! )
define() 函数定义一个常量
常量类似变量,不同之处在于:
- 在设定以后,常量的值无法更改
- 常量名不需要开头的美元符号 ($)
- 作用域不影响对常量的访问
- 常量值只能是字符串或数字
define(name,value,case_insensitive)
参数 | 描述 |
---|---|
name | 必需。规定常量的名称。 |
value | 必需。规定常量的值。 |
case_insensitive |
可选。规定常量的名称是否对大小写敏感。 若设置为 true,则对大小写不敏感。默认是 false(大小写敏感)。 |
dirname() 函数返回路径中的目录部分
<?php
echo dirname("c:/testweb/home.php");
echo dirname("/testweb/home.php");
?>
输出:
c:/testweb /testweb
basename() 函数返回路径中的文件名部分
basename(path,suffix)
参数 | 描述 |
---|---|
path | 必需。规定要检查的路径。 |
suffix | 可选。规定文件扩展名。如果文件有名有文件扩展名,将不会显示这个扩展名。 |
<?php
$path = "/testweb/home.php";
//Show filename with file extension
echo basename($path) ."<br/>";
//Show filename without file extension
echo basename($path,".php");
?>
上面的代码将输出:
home.php
home
$_SERVER['SCRIPT_FILENAME'] 与 __FILE__ 的区别
假设web根目录是 e:/myweb
先建立 e:/myweb/index.php
内容是:
<?php require 'other/index2.php'; ?>
再建立 e:/myweb/other/index2.php
内容是:
<?php
echo $_SERVER["SCRIPT_FILENAME"];
echo __FILE__;
?>
然后访问http://127.0.0.1/index.php,输出结果如下:
E:/myweb/index.php -------------------当前执行程序的绝对路径及文件名
E:\myweb\other\index2.php -------------------原始文件(被包含文件)的绝对路径及文件名
reset() 函数
reset() 函数将内部指针指向数组中的第一个元素,并输出。
相关的方法:
- current() - 返回数组中的当前元素的值
- end() - 将内部指针指向数组中的最后一个元素,并输出
- next() - 将内部指针指向数组中的下一个元素,并输出
- prev() - 将内部指针指向数组中的上一个元素,并输出
- each() - 返回当前元素的键名和键值,并将内部指针向前移动
<?php
$people = array("Bill", "Steve", "Mark", "David");
echo current($people) . "<br>"; // 当前元素是 Bill
echo next($people) . "<br>"; // Bill 的下一个元素是 Steve
echo current($people) . "<br>"; // 现在当前元素是 Steve
echo prev($people) . "<br>"; // Steve 的上一个元素是 Bill
echo end($people) . "<br>"; // 最后一个元素是 David
echo prev($people) . "<br>"; // David 之前的元素是 Mark
echo current($people) . "<br>"; // 目前的当前元素是 Mark
echo reset($people) . "<br>"; // 把内部指针移动到数组的首个元素,即 Bill
echo next($people) . "<br>"; // Bill 的下一个元素是 Steve
print_r (each($people)); // 返回当前元素的键名和键值(目前是 Steve),并向前移动内部指针
?>
上一篇: 考研系列之字符串压缩
下一篇: PHP学习 Day_01