关于php面向对象的静态变量的问题
代码如下:
<?php
class Book{
static $num=0;
public function showme(){
echo '您是第'.self::$num.'位访客';
self::$num++;
}
}
$book1 = new Book();
$book1->showme();
echo"<br>";
$book2=new Book();
$book2->showme();
echo "<br>";
echo '您是第'.Book::$num.'位访客';
?>
结果是:
您是第0位访客
您是第1位访客
您是第2位访客
如果改掉static 变成 public 那么为什么会出现错误:Fatal error: Access to undeclared static property: Book::$num
虽然Book::$num是调用的类内部变量,可是如果我用了public不是哪都能访问的到么?
难道 Book::$num 必须是静态变量?
怎么回事?
静态变量不用实例化对象,当累第一次被加载时就已经分配了内存单元。
这句话,如果适应到这个程序的话,是不是class Book{
static $num=0;
public function showme(){
echo '您是第'.self::$num.'位访客';
self::$num++;
}
}
这时已经被分配了内存了呢?
相关文档:
1、分别安装三个环境,并设置不同端口
PHP:80
JSP:8080
ASP:8081
2、设置/Apache2/conf/httpd.conf
去掉以下三行前的注释:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
加入以下几行: ......
以下是利用php实现中文水印的代码。
<?php
Header("Content-type: image/png"); /*通知浏览器,要输出图像*/
$im = imagecreate(400 , 300); /*定义图像的大小*/
$gray = Ima ......
function checkFileType($fileName){
$file = fopen($fileName, "rb");
$bin = fread($file, 2); //只读2字节
&n ......
/**********************************
APACHE
***********************************/
编辑参数:
./configure" \
"--prefix=/usr/local/apache" \
"--enable-so" \
"--enable-ssl" \
"--enable-mods-shared=most" \
"--with-mpm=event" \
"--with-ssl=/usr/local/openssl" \
"--enable-cache" \
"--enable-mem- ......
PHP源代码简单分析
1. 目录结构
1. build 和编译有关的目录。
2. ext 扩展库代码,例如 Mysql、zlib、iconv 等我们熟悉的扩展库。
3. main 主目录。
4. sapi 和各种服务器的接口调用,例如apache、IIS等,也包含一般的fastcgi、cgi等。
5. wi ......