PHP截取中文字符串的问题

如果您有疑问或建议,请进入技术讨论区交流 以下代码试用于GB2312编码,截取中文字符串是PHP中一个头疼的问题,解决方法是根据值是否大于等于128来判断是否是双字节字符,以避免出现乱码的情况。但中英文混合、特殊符号等问题总是存在,现在写一个比较全面的,仅供参考:程序说明: 1. len 参数以中文字符为标准,1len等于2个英文字符,为了形式上好看些 2. 如果将magic参数设为false,则... [阅读全文]

PHP程序与服务器端通讯方法小结

如果您有疑问或建议,请进入技术讨论区交流  假设有10个网站,分布在各地,它们的库存要同步,而数据库不支持远程连接。 我们要实时地取得服务器的库存数,可以通过很多种方法,我所知道的有以下几种: ·CURL方式 ·SOCKET方式 ·PHP5中的SOAP方式 以下分别给出示例来实现它: CURL方式 client.php <?php$psecode = ’NDE005’;$website = ’ww... [阅读全文]

用PHP写的身份证验证程序

如果您有疑问或建议,请进入技术讨论区交流  写了几个身份证方面的函数,个人感觉挺有用的,特别是在网络问卷调查时,对个人信息里的身份证进行验证很有用,但是应者寥寥,还是收在自己的blog里算了。 <?PHP// 计算身份证校验码,根据国家标准GB 11643-1999 function idcard_verify_number($idcard_base){  if (strlen($idcard_... [阅读全文]

PHP 5.0对象模型深度探索之定义一个类

如果您有疑问或建议,请进入技术讨论区交流 当你声明一个类,你需要列出对象应有的所有变量和所有函数—被称为属性和方法。列表1中显示了一个类的构成. 注意在大括号({})内你只能声明变量或者函数。列表2中显示了如何在一个类中定义三个属性和两个方法。 列表1 class Name extends Another Class {  Access Variable Declaration  Access F... [阅读全文]

PHP 5.0对象模型深度探索之构造和析构

如果您有疑问或建议,请进入技术讨论区交流 如果你在一个类中声明一个函数,命名为__construct,这个函数将被当成是一个构造函数并在建立一个对象实例时被执行。清楚地说,__是两个下划线。就像其它任何函数一样,构造函数可能有参数或者默认值. 你可以定义一个类来建立一个对象并将其属性全放在一个语句(statement)中。 你也可以定义一个名为__destruct的函数,PHP将在对象被销毁前调用... [阅读全文]

PHP 5.0对象模型深度探索之属性和方法

如果您有疑问或建议,请进入技术讨论区交流 一个对象实例的属性是变量,就像PHP的其他变量一样。但是你必须使用->运算符来引用它们。不需要在属性前使用美元符$。 可以联用->,如果一个对象的属性包含了一个对象,你可以使用两个->运算符来得到内部对象的属性. 你甚至可以用双重引用的字符串来放置这些表达式. 下面的例子中,对象House中的属性room包含了一组Room对象。 访问方法和访问属性类似。-... [阅读全文]

针对PHP木马攻击的防御之道

如果您有疑问或建议,请进入技术讨论区交流 本文通过介绍一些技巧介绍了针对PHP木马攻击的防御之道,通过这些方面你可以更好的防范木马程序。 1、防止跳出web目录 首先修改httpd.conf,如果你只允许你的php脚本程序在web目录里操作,还可以修改httpd.conf文件限制php的操作路径。比如你的web目录是/usr/local/apache/htdocs,那么在httpd.conf里加上... [阅读全文]

Windows下的PHP5.0安装配制详解

如果您有疑问或建议,请进入技术讨论区交流 ·支持新的对象模型和许多新特点的Zend引擎。 ·完全重新编写了XML支持,扩展性能围绕着优秀的libxml2库(http://www.xmlsoft.org/)。 ·新的SimpleXML扩展,PHP对象轻松访问操作。 ·全新的内建SOAP扩展,支持Web服务的交换。 ·增加命名为MySQLi的了MySQL的扩展,支持MySQL4.1及以后版本的功能。 ... [阅读全文]

PHP 5.0对象模型深度探索之对象复制

如果您有疑问或建议,请进入技术讨论区交流 PHP5中的对象模型通过引用来调用对象, 但有时你可能想建立一个对象的副本,并希望原来的对象的改变不影响到副本 . 为了这样的目的,PHP定义了一个特殊的方法,称为__clone. 像__construct和__destruct一样,前面有两个下划线。 默认地,用__clone方法将建立一个与原对象拥有相同属性和方法的对象. 如果你想在克隆时改变默认的内容... [阅读全文]

静态成员函数,PHP 5.0对象模型深度探索之类的静态成员

如果您有疑问或建议,请进入技术讨论区交流 类的静态成员与一般的类成员不同: 静态成员与对象的实例无关,只与类本身有关。他们用来实现类要封装的功能和数据,但不包括特定对象的功能和数据,静态成员包括静态方法和静态属性。 静态属性包含在类中要封装的数据,可以由所有类的实例共享。实际上,除了属于一个固定的类并限制访问方式外,类的静态属性非常类似于函数的全局变量。 我们在下例中使用了一个静态属性Counte... [阅读全文]

对象模型,PHP 5.0对象模型深度探索之访问方式

如果您有疑问或建议,请进入技术讨论区交流  PHP5的访问方式允许限制对类成员的访问。这是在PHP5中新增的功能,但在许多面向对象语言中都早已存在。有了访问方式,才能开发一个可靠的面向对象应用程序,并且构建可重用的面向对象类库。 像C++和Java一样,PHP有三种访问方式:public,private和protected. 对于一个类成员的访问方式,可以是其中之一. 如果你没有指明访问方式,默认... [阅读全文]

动画绑定模型,PHP 5.0对象模型深度探索之绑定

如果您有疑问或建议,请进入技术讨论区交流  除了限制访问,访问方式也决定哪个方法将被子类调用或哪个属性将被子类访问. 函数调用与函数本身的关联,以及成员访问与变量内存地址间的关系,称为绑定。 在计算机语言中有两种主要的绑定方式—静态绑定和动态绑定。静态绑定发生于数据结构和数据结构间,程序执行之前. 静态绑定发生于编译期, 因此不能利用任何运行期的信息。它针对函数调用与函数的主体,或变量与内存中的区... [阅读全文]

抽象类,PHP5.0对象模型探索之抽象方法和抽象类

如果您有疑问或建议,请进入技术讨论区交流  面向对象程序通过类的分层结构构建起来,在单重继承语言如PHP中,类的继承是树状的. 一个根类有一个或更多的子类,再从每个子类继承出一个或更多下一级子类。当然,可能存在多个根类,用来实现不同的功能。在一个良好设计的体系中,每个根类都应该有一个有用的接口, 可以被应用代码所使用。如果我们的应用代码被设计成与根类一起工作,那么它也可以和任何一个从根类继承出来的... [阅读全文]

对象串行化,PHP5.0对象模型探索之对象串行化

如果您有疑问或建议,请进入技术讨论区交流 串行化可以把变量包括对象,转化成连续bytes数据,你可以将串行化后的变量存在一个文件里或在网络上传输,然后再反串行化还原为原来的数据。你在反串行化类的对象之前定义的类,PHP可以成功地存储其对象的属性和方法. 有时你可能需要一个对象在反串行化后立即执行。为了这样的目的,PHP会自动寻找__sleep和__wakeup方法。 当一个对象被串行化,PHP会调... [阅读全文]

异常处理机制,PHP5的异常处理机制之使用throw关键字

如果您有疑问或建议,请进入技术讨论区交流 建立一个Exception对象后你可以将对象返回,但不应该这样使用,更好的方法是用throw关键字来代替。throw用来抛出异常: throw new Exception( "my message", 44 ); throw 将脚本的执行中止,并使相关的Exception对象对客户代码可用。 以下是改进过的getCommandObject() 方法: ... [阅读全文]

PHP 5.0 的变化与PHP 6.0 展望

如果您有疑问或建议,请进入技术讨论区交流 目前,大多数PHP安装还是使用PHP 4.x版本。实际上,PHP 5.0已经出台一段时间了,而如今PHP 5.1.1也刚刚发行。如果你还没有升级到这些新版本,那么让我们一同看一下在新版的PHP中的变化,并在最后讨论对于PHP 6所期望的特性。 一、PHP 5.0中的变化 作为一个全新的版本号,在PHP 4和PHP 5之间存在许多实质性的区别。大多数的炒作... [阅读全文]

php分页显示,PHP+MySQL分页显示示例分析

如果您有疑问或建议,请进入技术讨论区交流 Web开发是今后分布式程式开发的主流,通常的web开发都要涉及到与数据库打交道,客户端从服务器端读取通常都是以分页的形式来显示,一页一页的阅读起来既方便又美观。所以说写分页程序是web开发的一个重要组成部分,在这里,我们共同来研究分页程序的编写。 一、分页程序的原理 分页程序有两个非常重要的参数:每页显示几条记录($pagesize)和当前是第几页($... [阅读全文]

php代码优化,PHP程序加速探索之代码优化

如果您有疑问或建议,请进入技术讨论区交流 掌握了PEAR::BenchMark,现在你已经知道如何测试你的代码,知道如何判断你的代码是快是慢,是哪一部份比较慢。那么接下来我要说的就是如何消灭或优化那部份慢的代码。 这一点上我个人最主要的经验只有两点,一是消除错误的或低效的循环;二是优化数据库查询语句。其实还存在一些其它的优化细节,比如“str_replace比ereg_replace快”、“e... [阅读全文]

搜索引擎技术核心揭密(PHP版)

如果您有疑问或建议,请进入技术讨论区交流 谈到网页搜索引擎时,大多数人都会想到雅虎。的确,雅虎开创了一个互联网络的搜索时代。然而,雅虎目前用于搜索网页的技术却并非该公司原先自己开发的。2000年8月,雅虎采用了Google(www.google.com)这家由斯坦福大学学生创建的风险公司的技术。理由非常简单,Google的搜索引擎比雅虎先前使用的技术能更快、更准确搜索到所需要的信息。 让我们自... [阅读全文]

gzip压缩,PHP程序加速探索之压缩输出gzip

如果您有疑问或建议,请进入技术讨论区交流 利用Apache中的mod_gzip模块,我们可以利用gzip的压缩算法来对Apache服务器发布的网页内容进行压缩后再传输到客户端的浏览器。如果是纯文本的内容,效果非常明显,大约可以压缩到原来的30%-40%,使用户的浏览速度大大加快。 Gzip需要客户端浏览器支持,目前大部份浏览器都支持gzip,如IE,Netscape,Mozilla等,所以这种... [阅读全文]

在此处创建图形,使用 PHP 5.0创建图形的巧妙方法(2)

如果您有疑问或建议,请进入技术讨论区交流 创建 viewport viewport 是一个人造的坐标系统,可以转换成图像的物理坐标系统。viewport 的扩展可以是您希望的任何东西。例如,x 和 y 轴的起点和终点可以是 -2 和 2,这样 viewport 坐标平面的中心就是 0, 0。这对于三角图形(例如 sin 和 cosine)来说是很好的一个 viewport。或者,这个 viewp... [阅读全文]

在此处创建图形,使用 PHP 5.0创建图形的巧妙方法(1)

如果您有疑问或建议,请进入技术讨论区交流 本文将展示如何使用 PHP 构建面向对象的图形层。使用面向对象的系统可以用来构建复杂的图形,这比使用标准 PHP 库中所提供的基本功能来构建图形简单很多。 我将图形编辑程序分为两类:一类是绘图程序,利用这种程序可以一个像素一个像素地绘制图像;另外一类是制图程序,这种程序提供了一组对象,例如线、椭圆和矩形,您可以使用这些对象来组合成一幅大图像,例如 JP... [阅读全文]

PHP程序加速探索之脚本执行速度测试

如果您有疑问或建议,请进入技术讨论区交流 前面有提到,只有找到影响速度的代码,我们才有可能进行优化。PEAR的benchmark包中的Benchmark_Timer类和Benchmark_Iterate类,可以用来很方便地测试脚本执行的速度。(关于PEAR的安装与配置请自行查看相关资料) 。 首先用Benchmark_Iterate类来测试程序中某个函数或类的某个方法的执行时间。 benchma... [阅读全文]

php文件上传,用PHP文件上传的具体思路及实现

如果您有疑问或建议,请进入技术讨论区交流 文件上传我们需要用到HTML里面表单的type=file类型,及其enctype属性。这是我们大家必须要用的。当然了PHP函数库当中的FILE函数库,字符串类型函数库,目录函数库及$_FILES[]的使用是我们必须要用到的。 也许每一个站点都可能会对上传文件有许多的限制,这些限制会包括 文件类型,文件大小,扩展名,以及上传目录的存在与否,上传文件的存在... [阅读全文]

mvc框架,理解PHP中的MVC编程之MVC框架简介

如果您有疑问或建议,请进入技术讨论区交流 【什么是MVC?】 MVC是一个可以让你把“三个部分(即MVC的全称,Model、View、Controller)”谐调地组成一个复杂应用程序的概念。一辆汽车就是一个在现实生活中非常好的MVC例子。我们看车都看两个View(显示)部分:内部和外部。而这两个都离不开一个Controller(控制者):司机。刹车系统、方向盘和其他操控系统代表了Model(... [阅读全文]

使用PHP编写基于Web的文件管理系统

如果您有疑问或建议,请进入技术讨论区交流 PHP有很多与文件系统相关的函数,不仅可以帮助你打开文件,还可以显示目录内容、移动文件等。很多人甚至使用PHP写出了基于Web的文件管理器。 首先需要提醒一些关于文件路径的东西:在Windows你可以在文件路径中使用斜线“/”或反斜线“\\”,而其他操作系统仅使用”/”。出于兼容性考虑,以下实例使用“/”的表示方法: 下面的简单脚本显示了一个基本的目录... [阅读全文]

php输出缓存,PHP程序加速探索之缓存输出

如果您有疑问或建议,请进入技术讨论区交流 内容缓存输出 PEAR cache 接下来我们开始探索更常用的缓存技术,这也是本文的重点部份。首先我们使用PEAR中的cache包。PEAR可以将内容缓存于文件,数据库或者内存中,我们以文件为例。 下面是一个没有使用缓存的PHP小程序: pear_content_cache1.php <?php  echo "这是内容。<P>";  echo "当前时... [阅读全文]

php模板引擎,让你的PHP引擎全速运转的三个绝招

如果您有疑问或建议,请进入技术讨论区交流 作为流行的 Web 编程语言, PHP 的最大优势就是速度。 PHP4 已经在这方面做的非常好了,你几乎找不到比它更快的脚本编程语言了。但是如果你的应用负荷很大,而带宽又比较小,或者有其他的瓶颈影响你的服务器性能,那么,你不妨试试笔者为你开出的几个药方,看看是否灵验。 一、代码优化 一谈到代码优化,或许你想到的就是整齐明了的代码,但是本文的意思却不是... [阅读全文]

生命属于你自己,用PHPdig打造属于你自己的Google

如果您有疑问或建议,请进入技术讨论区交流 一、什么是PHPdig? PHPdig是国外非常流行的垂直搜索引擎产品(与其说是产品,不如说是一项区别于传统搜索引擎的搜索技术),采用PHP语言编写,利用了PHP程序运行的高效性,极大地提高了搜索反应速度,它可以像Google或者Baidu以及其它搜索引擎一样搜索互联网,搜索内容除了普通的网页外还包括txt, doc, xls, pdf等各式的文件,具有... [阅读全文]

简单线性回归,PHP实现简单线性回归之数据研究工具

上一页 [1] [2] [3] [4] 下一页 火灾损失研究 为了演示如何使用数据研究工具,我将使用来自假想的火灾损失研究的数据。这个研究将主要住宅区火灾损失的金额与它们到最近消防站的距离关联起来。例如,出于确定保险费的目的,保险公司会对这种关系的研究感兴趣。 该研究的数据如 图 1中的输入屏幕所示。 图 1. 显示研究数据的输入屏幕 数据被提交之后,会对它进行分析,并显示这些分析的结果... [阅读全文]
< 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 > >> 共4477条 分150页