您的位置:首页 > 编程语言 > PHP开发

[原创][技术]PHP学习笔记(4)--PHP高级1/2

2013-02-26 15:57 477 查看
PHP 日期
PHP 引用
PHP 文件
PHP 文件上传
PHP Cookies
PHP Sessions
----------------------------------------------------------------------------
PHP 日期
例子:
<?php
echo date("Y/m/d/D");
echo "<br />";
echo date("Y.m.d,D");
echo "<br />";
echo date("Y-m-d D");
?>
运行结果:
2009/06/19/Fri
2009.06.19,Fri
2009-06-19 Fri
由上可见Y 代表年, m代表月份,d代表日, D代表3字母缩写的星期几
----------------------------------------------------------------------------
PHP 引用
服务器端引用(Server Side Includes)
通过 include() 或 require() 函数,您可以在服务器执行 PHP 文件之前在该文件中插入一个文件的内容。除了它们处理错误的方式不同之外,这两个函数在其他方面都是相同的。include() 函数会生成一个警告(但是脚本会继续执行),而 require() 函数会生成一个致命错误(fatal error)(在错误发生后脚本会停止执行)。
所以为了安全起见,推荐用require() !!!
举个例子,创建common_links.php,内容如下:
常用网站<br/>
<a href="http://www.163.com">网易</a>
<a href="http://www.daqi.com">大旗网</a>
<a href="http://www.tianya.cn">天涯社区</a>
<br/>
再在welcome.php中添加以下内容:
<?php
require("common_links.php");
?>
这样在客户端的php返回页的“查看源文件”中,可以发现common_links.php中的内容被包含进来了
---------------------------------------------------------------------------
PHP 文件
因为和C语言用法十分相似,所以举一个例子:
<?php
$file = fopen("welcome.txt", "r") or exit("Unable to open file!");
//Output a line of the file until the end is reached
while(!feof($file))
{
echo fgets($file). "<br />";
}
fclose($file);
?>
其中fgets读一行,可以每次读一个字节:
fgetc($file)

----------------------------------------------------------------------------
PHP 文件上传

步骤:
(1) 在index.html中写入
<html>
<body>

<form action="upload_file.php" method="post"
enctype="multipart/form-data">
<label for="file">Filename:</label>
<input type="file" name="file" id="file" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>

</body>
</html>
(2) 在upload_file.php中,写入
(在IE系列浏览器中,要指定pjpeg, 在firefox系列浏览器中,要指定jpeg)
<?php
if ((($_FILES["file"]["type"] == "image/gif")
|| ($_FILES["file"]["type"] == "image/jpeg")
|| ($_FILES["file"]["type"] == "image/pjpeg")) && ($_FILES["file"]["size"] < 200000))
{
if ($_FILES["file"]["error"] > 0)
{
echo "Return Code: " . $_FILES["file"]["error"] . "<br />";
}
else
{
echo "Upload: " . $_FILES["file"]["name"] . "<br />";
echo "Type: " . $_FILES["file"]["type"] . "<br />";
echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
echo "Temp file: " . $_FILES["file"]["tmp_name"] . "<br />";

if (file_exists("upload/" . $_FILES["file"]["name"]))
{
echo $_FILES["file"]["name"] . " already exists. ";
}
else
{
move_uploaded_file($_FILES["file"]["tmp_name"],
"upload/" . $_FILES["file"]["name"]);
echo "Stored in: " . "upload/" . $_FILES["file"]["name"];
}
}
}
else
{
echo "Invalid file";
}
?>
----------------------------------------------------------------------------
PHP Cookies
 (1) 创建cookie
<?php
setcookie("user", "李先生", time()+1800);
?>
以上1800代表cookie的有效期是 1800秒
(2) 取cookie值
echo $_COOKIE["user"]."<br>";
 (3) 删除cookie
<?php
// set the expiration date to one hour ago
setcookie("user", "", time()-3600);
?>
即是设为了过去的时间点,是的,和C++和一些习惯不同,并不需要消毁cookie ,设为过去的时间点即可
----------------------------------------------------------------------------
PHP Sessions
当您运行一个应用程序时,您会打开它,做些更改,然后关闭它。这很像一次会话。计算机清楚你是谁。它知道你何时启动应用程序,并在何时终止。但是在因特网上,存在一个问题:服务器不知道你是谁以及你做什么,这是由于 HTTP 地址不能维持状态。
通过在服务器上存储用户信息以便随后使用,PHP session 解决了这个问题(比如用户名称、购买商品等)。不过,会话信息是临时的,在用户离开网站后将被删除。如果您需要永久储存信息,可以把数据存储在数据库中。
Session 的工作机制是:为每个访问者创建一个唯一的 id (UID),并基于这个 UID 来存储变量。UID 存储在 cookie 中,亦或通过 URL 进行传导。
每个session可以创建若干个变量

<?php
session_start();
// store session data 先start了session,之后创建了Views变量,并赋了值
$_SESSION['views']=1;
?>

<html>
<body>

<?php
//retrieve session data
echo "Pageviews=". $_SESSION['views'];
?>

</body>
</html>
关于释放session变量
<?php
unset($_SESSION['views']);
?>

关于结束整个session:

<?php
session_destroy();
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: