站内搜索

本次搜索找到结果 68 条
代码若有改动不再更新文章,请以Gist上最新的代码为准。链接相信很多程序(尤其是采集类的程序)都会有需要把网址的相对路径转换成绝对路径的需要,例如采集到某页面的HTML代码中包含资源文件经常会看到这样的文件名:<linkrel="stylesheet"href="css/style.css"/><imgsrc="/logo.png"/><imgsrc="../banner.jpg"/>如果直接用获取其href属性或src属性很明显这个地址是打不开的,这就需要将其中的相对路径转为绝对路径。查一下网上相关的代码也不少,但大多数代码都太难被读懂,而且执行效率不见得会高,基于此我开始着...
CodeIginter是一个很不错的轻量级PHP框架,文档也比较全面。关于CI去除“index.php”的伪静态设置在官方的文档中却只提及了一点,而且给出的方法对于静态文件还会出现错误。以下的内容并非是原创,而是整理了CI在不同服务器下的伪静态设置方法放在一起,供有需要的朋友复制、使用。Apache服务器Apache服务在打开URLRewrite模块后使用.htaceess文件处理伪静态规则。使用方法很简单,在网站根目录创建一个文本文件并命名为.htaccess,复制下面的内容进去保存就好了。(Windows的电脑上不允许这种以点号开头的文件,不过可以使用命令提示符重命名,或者先随便用什么名字,上传到服务器后再改...
最近研究一个七牛的下载API,其中用到了一种叫hmac_sha1的签名算法,用官方给出代码无法实现(因为空间配置没有提供这个函数),所以就去了解了下这种算法。具体关于hmac_sha1的信息可以参见维基百科。我只说下具体的PHP代码实现:/***获取hmac_sha1签名的值*@link代码来自:http://www.educity.cn/develop/406138.html**@param$str源串*@param$key密钥**@return签名值*/functionhmac_sha1($str,$key){$signature="";if(function_exists('hash_hmac')){$si...
前几天冰翼博客推出了自己的短网址程序并且对外开放了调用API(见《冰翼短网址程序改版上线,开放API》),今天就实战下,讲述如何在Wordpress中应用短网址。至于在博客中使用短网址的好处我就不多说啦,都是为了SEO。以下代码可单独创建为一个插件,也可以加在主题functions.php的后面使用,代码中有两个add_filter函数,如果不需要使用评论或文章中的应用短网址操作直接把对应的add_filter删除(或注释)掉即可:=======================================【更新】2014-09-08Version1.07之前的代码使用的PHP的内联函数,而这一特性在低版本的P...
2016-05-22更新:phurl的算法由于会产生被遍历的安全问题目前已停止使用,新的方案和接口正在开发中。我曾在2013年5月18日发分享过一个网站软件叫PhUrl(参见《免费短网址程序:phurl》),PhUrl的源码是逐过程的,功能简单、难以扩展并且难以移植。刚好我最近在学习PHP面向对象,本着代码重用并且易于扩展的原则,对PhUrl的全部源代码进行了改造(准确的说两者之间已经没什么相似性了,除了前台界面暂时还未修改)。这次修改主要是向着面向对象和面向切面两个方向,在过程式执行的同时引入Hook机制,在数据校验、Query执行、数据插入等过程创建Hook并提供扩展支持。修改后的程序使用我常用的CI(Cod...
ApacheWeb服务器可以通过.htaccess文件来操作各种信息,这是一个目录级配置文件的默认名称,允许去中央化的Web服务器配置管理。可用来重写服务器的全局配置。该文件的目的就是为了允许单独目录的访问控制配置,例如密码和内容访问。下面是21个非常有用的.htaccess配置的提示和技巧:1.定制目录的Index文件DirectoryIndexindex.htmlindex.phpindex.htm你可以使用上面的配置来更改目录的默认页面,例如你将这个脚本放在foo目录,则用户请求/foo/时候就会访问/foo/index.html。2.自定义错误页ErrorDocument404errors/404.htm...
Wordpress核心函数中有一些函数称为可扩展函数(pluggablefunctions),这些函数都是在wp-include/pluggable.php中被定义的,正如它们的名字一样,我们可以通过插件来重写或者加强它们的功能。可扩展函数的真正强大之处在于我们可以自定义函数来增强或改变原有函数的行为。在pluggable.php中可以找到这些函数的定义,或者在WP文档PluggableFunctions中找到它们。以下有几个经常被重写的核心函数:wp_logout用于登出WP系统,你可以在这里加入一些自定义的操作(如移除自定义SESSION等)。wp_mail是被扩展的最多的WP函数,可以通过覆写它来使用自己的...
这张图片还是我在群里偶然发现的,概括得挺全面,涉及到PHP面向对象的基本用法、面象对象的基本概念、辅助函数、反射等等,源文件名是PHP5OOP思维导图.jpg不过这张图只适合初学PHP面向对象的人继续对其加深印象,已经会使用面向对象的应该继续深入学习PHP高级面向对象及设计模式,这些也就不适用了。先贴个小图,后面再附上大图的地址: 完整大图地址...
由于以前使用的多说评论,几乎看不到什么垃圾评论,自从朋友说使用多说后收不到我回复时的邮件通知(其实我自己出收不到通知邮件)我就把多说给禁了,从此后垃圾评论满天飞啊~~试过各种方法去拦截,后来又发现我所用的空间不支持PHP的Mail函数所以导致不能发送邮件(现在开始怀疑多说收不到通知邮件是不是也是这个原因),就尝试重写了wp_mail函数,邮件功能恢复后就开始了邮件满天飞的情况,垃圾邮件到了不得不阻止的地步了。开始是自己写了个简单的插件,虽然写个小插件与直接改funcions.php效果一样,插件只实现一个简单的功能:就是当评论的内容包含一个以上的链接时将其标记为垃圾评论,误判率低于5%!尽管如此可还是能收到每条垃...
用过Wordpress的都知道,只要在“设置”->“讨论”里面设置了有人发表评论时或有评论等待审核时发送邮件通知后便可以在文章被评论时收到Wordpress的提醒邮件,但这个发送邮件是基于PHP的Mail函数的,而PHP的Mail要求php.ini有对应的设置,而虚拟主机用户往往无法修改这个设置便导致WP发送邮件失败,我们就不能在收到评论时看到提醒邮件了。网上有很多种方法可以解决这个问题,虽然都是使用SMTP发送邮件,但具体实现不同:即通过SMTP插件、修改Wordpress源代码。但插件太多会使博客打开变慢,修改源代码在遇到WP更新时又会丢失所有的更改,于是我想到通过另一个方法来实现无插件调用SMTP发送...