当前位置: 编程技术>php
本页文章导读:
▪php download.php实现代码 跳转到下载文件(response.redirect)
跳转核心代码实现。 代码如下:if (isset($link)) { Header("HTTP/1.1 303 See Other"); Header("Location: $link"); .........
▪php 文件夹删除、php清除缓存程序
代码如下: <?php header('content-type:text/html;charset=utf-8'); function delFile($fpath) { $filesize = array(); $filepath = iconv('gb2312', 'utf-8', $fpath); if (is_dir($fpath)) { if ($dh = opendir($fpath)) { while (($file = readdir($dh)) !==.........
▪php 正则匹配函数体
代码如下:<?php $data = php_strip_whitespace('test.php'); //去掉注释,空格,换行(不包括字符串中的) echo $data; $data = preg_match_all(" / function\s+ #匹配function和后面的空格 [a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xf.........
[1]php download.php实现代码 跳转到下载文件(response.redirect)
来源: 互联网 发布时间: 2013-11-30
跳转核心代码实现。
if (isset($link))
{
Header("HTTP/1.1 303 See Other");
Header("Location: $link");
exit;
}
下面是国外的一篇文章说明。
Hey Chris:
On Wed, Jan 26, 2005 at 12:28:19PM -0500, csnyder wrote:
>
> <?php
> // process form
> ...
> // redirect to results page
> header( 'HTTP/1.1 303 See Other' );
> header( 'Location: result.html' );
> exit( 'Form submitted, <a href="/blog_article/result.html">continue</a>.' );
> ?>
Good point. But some feedback here. The optimail syntax is:
<?php
// process form
// ...
// redirect to results page
header('Status: 303 See Other' );
header('Location: http://www./result.html');
?>
Here's why...
Using "Status:" in the header is better because the resulting headers from
Apache are more correct:
HTTP/1.1 303 See Other
instead of
HTTP/1.1 303
Additionally, one doesn't really know which version of HTTP is being used,
so why potentially cause problems by trying to guess.
The specs say location headers must have a complete URI in them, not just
the path.
Lastly, you don't want any output after the location header.
Later,
--Dan
代码如下:
if (isset($link))
{
Header("HTTP/1.1 303 See Other");
Header("Location: $link");
exit;
}
下面是国外的一篇文章说明。
Hey Chris:
On Wed, Jan 26, 2005 at 12:28:19PM -0500, csnyder wrote:
>
> <?php
> // process form
> ...
> // redirect to results page
> header( 'HTTP/1.1 303 See Other' );
> header( 'Location: result.html' );
> exit( 'Form submitted, <a href="/blog_article/result.html">continue</a>.' );
> ?>
Good point. But some feedback here. The optimail syntax is:
<?php
// process form
// ...
// redirect to results page
header('Status: 303 See Other' );
header('Location: http://www./result.html');
?>
Here's why...
Using "Status:" in the header is better because the resulting headers from
Apache are more correct:
HTTP/1.1 303 See Other
instead of
HTTP/1.1 303
Additionally, one doesn't really know which version of HTTP is being used,
so why potentially cause problems by trying to guess.
The specs say location headers must have a complete URI in them, not just
the path.
Lastly, you don't want any output after the location header.
Later,
--Dan
[2]php 文件夹删除、php清除缓存程序
来源: 互联网 发布时间: 2013-11-30
代码如下:
<?php
header('content-type:text/html;charset=utf-8');
function delFile($fpath) {
$filesize = array();
$filepath = iconv('gb2312', 'utf-8', $fpath);
if (is_dir($fpath)) {
if ($dh = opendir($fpath)) {
while (($file = readdir($dh)) !== false) {
if($file != '.' && $file != '..') {
$filesize[] = delFile($fpath.'/'.$file);
}
}
closedir($dh);
}
/*
* 方便统计目录数
*/
$filesize['file'] = 0;
if(@rmdir($fpath) === true) {
echo "{$filepath}................删除成功<br>\n";
} else {
echo "{$filepath}................删除失败<br>\n";
}
} else {
if(is_file($fpath)) {
$filesize[] = $fsize = filesize($fpath);
if(@unlink($fpath) === true) {
echo "{$filepath}...{$fsize}K................删除成功<br>\n";
} else {
echo "{$filepath}...{$fsize}K................删除失败<br>\n";
}
}
}
return $filesize;
}
/*
* function getArrSum(array &$arr) 数组求和
* array &$arr 被处理数组
*/
function getArrSum(&$arr) {
if(is_array($arr)) {
foreach ($arr as &$value) {
$value = getArrSum($value);
}
return array_sum($arr);
} else {
return $arr;
}
}
$fpath = 'D:/test';
$filesize = delFile($fpath);
$size = getArrSum($filesize);
printf('为您节省:%.3fM 空间', $size/(1024*1024));
?>
只要在D盘下建一个 test 文件夹,然后再里面随便拷入一点东西就可以测试了
[3]php 正则匹配函数体
来源: 互联网 发布时间: 2013-11-30
代码如下:
<?php
$data = php_strip_whitespace('test.php'); //去掉注释,空格,换行(不包括字符串中的)
echo $data;
$data = preg_match_all("
/
function\s+ #匹配function和后面的空格
[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* #匹配函数名
\(([^)]*?)\)\s+ #匹配函数参数,并且作为子模式捕获
\{
(.*?)
\}(?=(?:\s*function|\s*?$)) #匹配大括号,仅当后面紧跟着function或者处于字符串结束位置时
/xi
", $data, $matches);
print_r($matches);
?>
最新技术文章: