PHP拷贝目录包括子目录和文件

2011年04月01号
没有评论 546次浏览

想必大家都用过DOS的XCOPY吧,XCOPY的一次复制整个目录所有文件,而PHP提供的文件操作比较简单,象copy()每次只能复制一个文件,所以在此基础上扩展了这个函数!也就是象DOS 的 “XCOPY FEIY FEIY2”(全盘拷贝),顺便加了个开关变量,可以实现 DOS 的 copy feiy/*.* feiy2(既只复目录下所有文件)。

函数如下: 阅读全文

类别PHP 标签

PHP的可变变量名

2011年03月30号
没有评论 282次浏览

有时候可变的变量名会给编程带来很大的方便。也就是说变量名可以被动态的命名和使用。通常变量通过下面这样的语句来命名 :

  • <?php 
  • $a = 'hello'; 
  • ?> 
  • 可变变量名指的是使用一个变量的值作为这个变量的名称。在上面的例子中,通过使用两个$符号,你可以把hello设置成一个变量的名称,就像下面那样。

  • <?php 
  • $$a = 'world'; 
  • ?>  阅读全文
  • 类别PHP 标签

    有图有真相 PHP代码源被黑了

    2011年03月30号
    没有评论 301次浏览

    源头在于wiki.php.net的漏洞导致wiki账号被盗,而wiki的账号和php代码源的SVN提交权限相关联。

    有图有真相:

    PHP

    原文:

    The wiki.php.net box was compromised and the attackers were able to collect wiki account credentials. No other machines in the php.net infrastructure appear to have been affected. Our biggest concern is, of course, the integrity of our source code. We did an extensive code audit and looked at every commit since 5.3.5 to make sure that no stolen accounts were used to inject anything malicious. Nothing was found. The compromised machine has been wiped and we are forcing a password change for all svn accounts.

    We are still investigating the details of the attack which combined a vulnerability in the Wiki software with a Linux root exploit. 阅读全文

    类别其它 标签

    WordPress数据库及各表结构

    2011年03月30号
    没有评论 523次浏览

    WordPress使用MySQL数据库。作为一个开发者,我们有必要掌握WordPress数据库的基本构造,并在自己的插件或主题中使用他们。

    截至WordPress3.0,WordPress一共有以下11个表。这里加上了默认的表前缀 wp_ 。

    wp_commentmeta:存储评论的元数据
    wp_comments:存储评论
    wp_links:存储友情链接(Blogroll)
    wp_options:存储WordPress系统选项和插件、主题配置
    wp_postmeta:存储文章(包括页面、上传文件、修订)的元数据
    wp_posts:存储文章(包括页面、上传文件、修订)
    wp_terms:存储每个目录、标签
    wp_term_relationships:存储每个文章、链接和对应分类的关系
    wp_term_taxonomy:存储每个目录、标签所对应的分类
    wp_usermeta:存储用户的元数据
    wp_users:存储用户 阅读全文

    类别其它 标签

    php中iconv函数使用方法

    2011年03月23号
    没有评论 361次浏览

    unix下安装PHP的module,需要重新编译PHP,Windows下安装模板,只需将php.ini里的配置打开相应的dll就可,例如,需要加入gb库的支持,需要如下设置:
    extension_dir = “C:/ipaddr/php/extensions/”
    (注意,建议写全地址,并且后面加上/,很多时候是因为这里设置不对,才导致无法加载其它模块的dll的)
    再打开
    extension=php_gd2.dll
    但如果是安装iconv.dll,按上面方法,打开php_iconv.dll后,还是无法开启iconv模块,需要如下配置:
    a.上iconv的官方下载站点
    http://ftp.gnu.org/pub/gnu/libiconv/
    下面Windows版的iconv文件:libiconv-1.9.1.bin.woe32.zip
    将这文件解压,将bin/下面的charset.dll,iconv.dll,iconv.exe拷贝到c:/windows/ (或其它的系统PATH中)
    (ipaddr提醒你,这步是必须的,php_iconv.dll也是调用GNU的iconv库的,所以,先要安装GNU的iconv库) 阅读全文

    类别PHP 标签

    MongoDB数据库简单介绍

    2011年03月02号
    没有评论 973次浏览

    MongoDB数据 库简单介绍
    Mongo是一个高性能 ,开源 ,无模式 的文档型数据库 ,它在许多场景下可用于替代传统的关系型数据库或 键/值存储方式。Mongo使用C++开发 , 提供了以下功能:
    面向集合的存储:适合存储对象及JSON形式的数据。
    动态查询:Mongo支持丰富的查询表达式。查询指令使用JSON形式的 标记,可轻易查询文档中内嵌的对象及数组。
    完整的索引支持:包括文档内嵌对象及数组。Mongo的查询优化 器会分析查询表达式,并生成一个高效的查询计划。
    查 询监视:Mongo包含一个监视工具 用于分析数据库操作的性能。
    复制 及自动故障转移:Mongo数据库支持服务器 之间的数据复制,支持主-从模式及服务 器之间的相互复制。复制的主要目标是提供冗余及自 动故障转移。
    高效的传统存储方式:支持二进制数据及大型对象(如照片或图片)。
    自动分片以支持云级别的伸缩性(处于 早期alpha阶段):自动分片功能支持水平的数据库集群 ,可动态添加额外的机器。
    MongoDB的主要目标是在键/值存储方式(提供了高性能和高度伸缩性)以及传统的RDBMS系统 (丰富的功能)架起一座桥梁,集两者的优势于一 身。根据官方网站的描述,Mongo 适合用于以下场景:
    网站数据:Mongo非常适合实时的插入,更新与查询,并具备网站实时数据存储所需的复制及高度伸缩性。
    缓存 :由于性能很高,Mongo也适合作为信息基础 设施的缓存层。在系统重启之后,由Mongo搭建的 持久化缓存层可以避免下层的数据源 过载。
    大尺寸,低价值的数据:使用传统的关系型数据库存储一些数据时可能会比较昂贵,在此之前,很 多时候程序 员往往会选择传统的文件 进行存储。
    高伸缩性的场 景:Mongo非常适合由数十或数百台服务器组成的数据库。Mongo的路线图中已经包含对MapReduce引擎的内置支 持。
    用于 对象及JSON数据的存储:Mongo的BSON数据格式非常适合文档化格式的存储 及查询。
    自然,MongoDB的使用也会有一些限制,例如它不适合:
    高度事务性的系统:例如银行或会计系统。传统的关系型数据库目前还是更适用于需要大量原子性复杂事务的应用 程序。
    传统的商业智能应用:针对 特定问题的BI数据库会对产生高度优化的查询方式。对于此类应用,数据仓库可能是更合适的选择。
    需要SQL的问题
    MongoDB支持OS X、Linux及Windows等操作系统 ,并提供了 Python,PHP,Ruby,Java,C,C#,Javascript,Perl及C++语言的驱动程序,社区中也提供了对Erlang 及.NET等平台 的驱动程序 阅读全文

    类别数据库 标签

    MongoDB用户认证及权限的设置

    2011年03月02号
    没有评论 838次浏览

    针对当前数据库添加用户 权限是针对当前数据

    > use jieshi #进入jieshi数据库

    switched to db jieshi

    > db.addUser(“hapame”,”1qa2ws3ed”) #增加用户为hapame,并设置密码为1qa2ws3ed

    {

           “user” : “hapame”,

           “readOnly” : false, #默认是赋予用户读写权限

           “pwd” : “6beed8c02c5d4452e0a4de2ac7ac886c”

    }

    > db.auth(“hapame”,”1qa2ws3ed”) #添加用户认证

    1

    > db.system.users.find() #查看已存在的用户

    { “_id” : ObjectId(“4cf42f9fa071f6232e83aff0″), “user” : “hapame”, “readOnly” : false, “pwd” : “6beed8c02c5d4452e0a4de2ac7ac886c” }

    > db.addUser(“admin”,”1qa2ws3ed”,true) #给数据库jieshi的用户admin赋予只读权限

    {

           “user” : “admin”,

           “readOnly” : true,

           “pwd” : “69b1f28eb1c0e10113d777d3ecb70d86″

    } 阅读全文

    类别数据库 标签

    用php实现mongoDB的基本操作

    2011年02月28号
    没有评论 1,029次浏览

    说到php连mongoDB,不得不先介绍一下php的官方手册,网址在:http://us.php.net/manual/en/book.mongo.php

    在php的mongo扩展中,提供了4类接口(对象):

    1,针对mongoDB连接的操作:Mongo

    http://us.php.net/manual/en/class.mongo.php

    2,针对mongoDB中数据库的操作:MongoDB

    http://us.php.net/manual/en/class.mongodb.php

    3,针对mongoDB中collection的操作:MongoCollection

    http://us.php.net/manual/en/class.mongocollection.php

    4,针对查询结果集的操作:MongoCursor

    http://us.php.net/manual/en/class.mongocursor.php 阅读全文

    类别数据库 标签