当前位置:  编程技术>php
本页文章导读:
    ▪第七节 类的静态成员 [7]       类的静态成员与一般的类成员不同: 静态成员与对象的实例无关,只与类本身有关. 他们用来实现类要封装的功能和数据,但不包括特定对象的功能和数据. 静态成员包括静态.........
    ▪用PHP实现文件上传二法       PHP(Hypertext Preprocessor)是一种 HTML 内嵌式的语言 (类似 IIS上的ASP)。而 PHP 独特的语法混合了 C、Java、Perl 以及 PHP 式的新语法。它可以比 CGI 或者 Perl更快速的执行动态网页。.........
    ▪PHP安装全攻略:APACHE       首先,安装并配置PHP31、解开压缩包到你喜欢的目录如:C:\PHP32、把C:\php3\php3.ini-inst文件改名成PHP3.INI并拷贝到C:\windows\3、修改php3.ini。a、修改doc_root=XXXX改成你自己APACHE的.........

[1]第七节 类的静态成员 [7]
    来源: 互联网  发布时间: 2013-11-30

类的静态成员与一般的类成员不同: 静态成员与对象的实例无关,只与类本身有关. 他们用来实现类要封装的功能和数据,但不包括特定对象的功能和数据. 静态成员包括静态方法和静态属性.

静态属性包含在类中要封装的数据,可以由所有类的实例共享. 实际上,除了属于一个固定的类并限制访问方式外,类的静态属性非常类似于函数的全局变量

我们在下例中使用了一个静态属性Counter::$count. 它属于Counter类,而不属于任何Counter的实例.你不能用this来引用它,但可以用self或其它有效的命名表达. 在例子中,getCount方法返回self::$count,而不是Counter::$count.

静态方法则实现类需要封装的功能,与特定的对象无关. 静态方法非常类似于全局函数. 静态方法可以完全访问类的属性,也可以由对象的实例来访问,不论访问的限定语是否是什么.

在6.3例中,getCount是一个普通的方法,用->来调用. PHP建立一个this变量,尽管方法没有使用到.但是,getCount不属于任何对象.在有些情况下,我们甚至希望在不存在有效的对象时调用它,那么就应该使用静态方法. PHP将不在静态方法内部建立this变量,即使你从一个对象中调用它们.

例子6.7由6.3改变getCount为静态方法而来. Static关键字不能阻止一个实例用->运算符来调用getCount,但PHP将不在方法内部建立this变量.如果你使用this->来调用,将会出错.

//6.3例指第四节--构造函数和析构函数中的例子(参看前文),通过两个例子的比较,你可以很好掌握
//static方法与普通方法之间的区别.

你可以写一个方法通过判断this是否建立来显示是否它被静态地或者非静态地调用. 当然,如果你用了static 关键字,不管它怎样被调用,这个方法总是静态的.

你的类也可以定义常量属性,不需要使用public static,只需要用const关键字即可. 常量属性总是静态的.它们是类的属性,而不是实例化该类的对象的属性.

Listing 6.7 Static members

<?php
class Counter
{
private static $count = 0;
const VERSION = 2.0;

function __construct()
{
self::$count++;
}

function __destruct()
{
self::$count--;
}

static function getCount()
{
return self::$count;
}
};
//创建一个实例,则__construct()将执行
$c = new Counter();

//输出 1
print(Counter::getCount() . "<br>n");

//输出类的版本属性
print("Version used: " . Counter::VERSION . "<br>n");
?>

    
[2]用PHP实现文件上传二法
    来源: 互联网  发布时间: 2013-11-30

PHP(Hypertext Preprocessor)是一种 HTML 内嵌式的语言 (类似 IIS上的ASP)。而 PHP 独特的语法混合了 C、Java、Perl 以及 PHP 式的新语法。它可以比 CGI 或者 Perl更快速的执行动态网页。除此之外,用 PHP 写出来的 Web 后端CGI 程序,可以很轻易的移植到不同的系统平台上。

我们在做网站时,需要访问者的参于才能将网站建设得更加引人注目,这就要求我们从访问者那里得到文章、图片等。因此,文件上传成为网页中必不可少的功能。现在我就利用现在流行的编程语言PHP,用两种方法来说明其功能的实现。

一、利用php的文件函数来实现上传
这段代码分为两个文件,一个为upload.html,一个是upload.php。

上传文件选择:upload.html 代码如下:

<html><head><title>上载文件表单</title></head>

<body>

<form enctype="multipart/form-data" action="/blog_article/upload.html" method="post">

<input type="hidden" name="max_file_size" value="100000">

<center>请选择文件:

<input name="userfile" type="file">

<input type="submit" value="上传文件">

</center>

</form>

</body>

</html>


*** 说明 ***

1、请注意<form enctype="multipart/form-data"……>这是一个标签,我们要实现文件的上传,必须指定为multipart/form-data ,否则服务器将不知道你在干什么!

2、值得注意的是文件upload.html中表单选项 MAX_FILE_SIZE 的隐藏值域,通过设置

其Value(值)可以限制上载文件的大小。

处理刚刚上传的文件:upload.php 代码如下:

<html>

<head>

<title>处理上载文件</title>

</head>

<body>

<?

copy($userfile,"newfile");

echo $userfile."-用户上传到服务器上的文件临时存放的名称<br>";

echo $userfile_name."-在用户机器上该文件的原始名称<br>";

echo $userfile_size."-上传文件的实际字节数<br>";

echo $userfile_type."-如果用户的浏览器提供了这个信息的话,它表示mime的类型。例如image/gif<br>";

?>

</body>

</html>


*** 说明 ***

1、使用了PHP文件函数copy()将上载到临时目录下的文件拷贝到一个特定的目录下,并重新命名为"newfile"。

2、在upload.html中定义了一个变量userfile,在upload.php中,我们就可以使用这个变量,直接通过$userfile访问上载的文件,但由于这是一个保存文件的变量,因此文件名字必须通过另外一个$userfile_name变量取得。

下面是这个变量的具体用法:

$userfile:在将要存放上载文件的服务器上的临时文件名字。

$userfile_name:在发送者系统中的初始文件名。

$userfile_size:按字节计算的上载文件的大小。

$userfile_type:多用途网际邮件扩充协议类型的文件,前提是浏览器提供这种信息,比如说“image/gif"。



二、利用FTP功能进行文件上传
这段代码同样分为两个文件,一个为upload.php,一个是ftp.php。

设置ftp的相关选项及选择上传文件名:upload.php 代码如下:

<?php

$username="用户名";

$password="用户密码";

$server="主机名";

$cdir="上传目录名" ;

//以上设置你的FTP主机名、用户名和用户密码

?>

<!-- 文件上传设置标签 -->

<form enctype="multipart/form-data" action=ftp.php method=post>

<!-- 传递变量 -->

<input type=hidden name=username value=<? Echo $username; ?>>

<input type=hidden name=password value=<? Echo $password; ?>>

<input type=hidden name=server value=<? Echo $server; ?>>

<input type=hidden name=cdir value=<? Echo $cdir; ?>>

<table>

<tr>

<td>上传文件选择

<input type=file name=upfile>

</td>

</tr>

<tr>

<td>

<!-- 提交表单-->

<input type=submit name=action value=上传>

</td>

</tr>

</table>

</form>


处理上传文件:ftp.php 代码如下:

<?php

//ftp联接主机函数

function connect()

{

global $server, $username, $password;

$conn = ftp_connect($server);

ftp_login($conn, $username, $password);

return $conn;

}

//建立ftp联接

$result = connect();

if ($action == "上传")

{

//用来改变ftp路径

ftp_chdir($result, $cdir);

//用来上传指定的文件,同名并以二进制位传递

$res_code = ftp_put($result, $upfile_name, $upfile, FTP_BINARY);

// 判断是否正确上传

if ($res_code == 1)

echo "上传成功!";

else

echo "上传错误!";

}

// 关闭联接

ftp_quit($result);

?>


*** 说明 ***

函数ftp_put(int ftp_stream, string remote_file, string local_file, int mode)用法

返回值: 布尔值

本函数用来上传指定的文件。参数 ftp_stream 为 FTP 的连接代码。参数 remote_file为欲存在远端的文件名。参数 local_file 为欲上传文件的文件名。参数 mode 的值有 FTP_ASCII 及FTP_BINARY 二种,分别表示文档或者是二进位文件。成功则返回 true 值,失败则返回 false 值。

    
[3]PHP安装全攻略:APACHE
    来源: 互联网  发布时间: 2013-11-30

首先,安装并配置PHP3
1、解开压缩包到你喜欢的目录如:C:\PHP3
2、把C:\php3\php3.ini-inst文件改名成PHP3.INI并拷贝到C:\windows\
3、修改php3.ini。
a、修改doc_root=XXXX改成你自己APACHE的根目录
比如像这样:doc_root=c:\apache\htdocs
b、extension_dir=XXXX改成你自己PHP3的安装目录
比如像这样:extension_dir=c:\php3
c、如果需要相应的数据库支持找到
;WindowsExtensions
extension=php3_mysql.dll我用MYSQL所以去掉了该项
;extension=php3_calendar.dll
;extension=php3_dbase.dll
;extension=php3_gd.dll
;extension=php3_dbm.dll
;extension=php3_mssql.dll
;extension=php3_zlib.dll
;extension=php3_filepro.dll
;extension=php3_imap4r1.dll
;extension=php3_ldap.dll
;extension=php3_crypt.dll
;extension=php3_msql2.dll
;extension=php3_odbc.dll
并去掉响应项上的“;”击活它。

接下来,安装并配置APACHE。
打开APACHE目录下CONF\HTTPD.CONF进行配置
找到<Directory"xxxx">一句,把XXXX改成你自己的PHP3的安装目录。
像下面这样:
<Directory"c:\php3">
AllowOverrideNone
OptionsNone
</Directory>
在HTTPD.CONF文件末尾追加下面3行。注意第一行引号里面的东西要改成你自己PHP3的安装目录,其他的请不要改动。
ScriptAlias/php3/"c:/php3/"
AddTypeapplication/x-httpd-php3.php3.php.phtml
Actionapplication/x-httpd-php3"/php3/php.exe"

找个文件测试一下吧!
将一个PHP3文件拷贝进apache/hdtocs/,启动APACHE!LET`SGO!!
打开浏览器等待那激动的时刻吧!!!!

调试环境:中文win984.2222apache1.3.11php3.0.15

    
最新技术文章:
▪PHP函数microtime()时间戳的定义与用法
▪PHP单一入口之apache配置内容
▪PHP数组排序方法总结(收藏)
▪php数组排序方法大全(脚本学堂整理奉献)
▪php数组排序的几个函数(附实例)
▪php二维数组排序(实例)
▪php根据键值对二维数组排序的小例子
▪php验证码(附截图)
▪php数组长度的获取方法(三个实例)
▪php获取数组长度的方法举例
▪判断php数组维度(php数组长度)的方法
▪php获取图片的exif信息的示例代码
▪PHP 数组key长度对性能的影响实例分析
▪php函数指定默认值的方法示例
▪php提交表单到当前页面、提交表单后页面重定...
▪php四舍五入的三种实现方法
▪php获得数组长度(元素个数)的方法
▪php日期函数的简单示例代码
▪php数学函数的简单示例代码
▪php字符串函数的简单示例代码
▪php文件下载代码(多浏览器兼容、支持中文文...
▪php实现文件下载、支持中文文件名的示例代码...
▪php文件下载(防止中文文件名乱码)的示例代码
▪解决PHP文件下载时中文文件名乱码的问题
▪php数组去重(一维、二维数组去重)的简单示例
▪php小数点后取两位的三种实现方法
▪php Redis 队列服务的简单示例
▪PHP导出excel时数字变为科学计数的解决方法
▪PHP数组根据值获取Key的简单示例
▪php数组去重的函数代码示例
 


站内导航:


特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

©2012-2021,,E-mail:www_#163.com(请将#改为@)

浙ICP备11055608号-3