立即登录 注册新帐号

http://www.chutianz.com - 楚天站长站

会员投稿 匿名投稿 投稿指南 RSS订阅 楚天站长站推荐:
搜索: 您的位置主页 > 网络编程 > Php编程 > 阅读资讯:PHP的其他功效和作用(2)

PHP的其他功效和作用(2)

2011-10-08 16:53:52 来源:楚天站长站 【 】 点击:我要投稿 发表评论


</HEAD>
<BODY>
<?
if ( $error_msg ) { echo '<B>$error_msg</B><BR><BR>'; }
if ( $sendit )
{
do_upload ();
}
elseif ( $cancelit )
{
header ( 'Location: $some_other_script' );
exit;
}
else
{
some_other_func ();
}
?>
</BODY>
</HTML>

5.5 常用函数

我们简略来看看一些常用的函数。

数组


array - 天生数组
count - 数组元素个数
sort - 数组排序,另有其他几种排序函数可供应用
list - 列出数组元素
each - 返回下一个key/value对
current - 返回当前数组元素
next,prev - 传回当前数组元素前后指针



日期和时间

checkdate - 验证日期/时间格局
date - 天诞辰期/时间格局
time - 当前时间信息
strftime - 格局化日期/时间

目录、文件系统

chdir - 转变目录
dir - 目录种别
opendir, readdir, closedir - 开启、读取、封闭目录
fopen, fclose - 开启、封闭文件
fgets, fgetss - 逐行读取内容
file - 将全部文件读进一个数组变量中

正则表达式

ereg - 匹配正则表达式
eregi - 大小写非敏感匹配正则表达式
ereg_replace -匹配正则表达式并调换
eregi_replace -大小写非敏感匹配正则表达式并调换
split - 依规矩切开字符串并以数组形势存储



字符串

AddSlashes - 加上斜杠后应用字符串
echo - 输出一个或多个字符串
join, implode - 将数组元素合并为字符串
htmlentities, htmlspecialchars - 将HTML特别字符转换为HTML标记情势
split - 依规矩切开字符串并以数组形势存储
5.6 扩大我们的典范主页

我们将应用以上提到的一些函数和思想为我们的典范主页添加更多的动态内容。我们可以在每个页面的顶部加上导航栏,同时使得当前页主动的不被链接显示;同时还可以添加一个用户验证表单以便上传音乐、图像等文件并主动更新页面。

导航栏

实际上就是在footer.inc文件中加上一段代码。假设你的web站点中所有后缀为.php3的文件都会呈现在导航栏中,以下就是被存为include/navbar.inc的代码:
<?
/* 输出该导航栏,链接所有除当前页的站内.php3文件 */
# 读取目录
$d = dir('./');
echo '<P ALIGN=\'CENTER\'> | \n';
while($entry = $d->read())
{
// 疏忽无文件情况
if ( !is_file($entry) )
continue;
/* 将文件名与扩大名离开。由于.是正则表达式特别字符,应当用\引出 */
list($filenm, $fileext) = split('\.',$entry, 2);
// 疏忽非.php3文件情况
if( $fileext != 'php3' )
continue;
/* 现在我们已经把.php3文件都选出,下面搜寻文件中的第一行(标题)
类似$title='something';
并将以上标题内容离开,用作链接文字 */
$linknm = '';
$fp=fopen($entry,'r');
while($buffer=fgets($fp, 4096))
{
$buffer = trim($buffer);
// 我们已经把每个文件的标题放在文件的第一行以便搜索
// 但是当你转变变量名称时可能会带来***烦
if (ereg('title *= *\'', $buffer))
{
/* 我们已经取得了标题内容并可以在此基础上
进行往除空格等处理。
必需以PHP代码方法处理,比如$title = 'blah blah' */
eval($buffer);
// 然后将链接文字显示为标题文字
$linknm = $title;
break;
}
}
fclose($fp);
if ( $entry == basename($PHP_SELF) )
echo '$linknm';
else
echo '<A HREF=\'$entry\'>$linknm</A>';
echo ' | ';
}
$d->close();
echo ' </P>\n';
?>
照片珍躲夹

我们将引用基于HTTP的验证、文件系统函数和文件上传功效保护放置图像文件的目录。
同时我们需要建立一个可以列出在该目录下所有照片的页面。

文件上传
<?
include('include/common.inc');
// 我们在这里再做一次用户验证
if(!isset($PHP_AUTH_USER))
{
Header('WWW-Authenticate: Basic realm=\'$MySiteName\'');
Header('HTTP/1.0 401 Unauthorized');
echo 'Sorry, you are not authorized to upload files\n';
exit;
}
else
{
if ( !($PHP_AUTH_USER==$MyName && $PHP_AUTH_PW==$MyPassword ) )
{
// 假如是错误的用户名称/密码对,强迫再次认证
Header('WWW-Authenticate: Basic realm=\'My Realm\'');
Header('HTTP/1.0 401 Unauthorized');
echo 'ERROR : $PHP_AUTH_USER/$PHP_AUTH_PW is invalid.<P>';
exit;
}
}
if ( $cancelit )
{
// 当浏览者按下'取消'按钮则转向首页面
header ( 'Location: front_2.php3' );
exit;
}
function do_upload () {
global $userfile, $userfile_size, $userfile_name, $userfile_type;
global $local_file, $error_msg;
global $HTTP_REFERER;
if ( $userfile == 'none' ) {
$error_msg = 'You did not specify a file for uploading.';
return;
}
if ( $userfile_size > 2000000 )
{
$error_msg = 'Sorry, your file is too large.';

感谢 靓哥 的投稿 本文仅代表作者观点,与楚天站长站立场无关。

分享到:

共3页: 上一页123下一页

数据统计中!!

tags:作用,功效,其他,PHP,

 责任编辑:靓哥
  • 相关文章列表                                                                                     收藏 - 挑错 - 推荐 - 打印
    评论总数: [ 查看全部 ] 网友评论