文章标签 ‘PHP’
[转载]PHP JSON使用 | JavaScript JSON使用. PHP JSON使用 由于JSON可以在很多种程序语言中使用,所以我们可以用来做小型数据中转,如:PHP输出JSON字符串供JavaScript使用等。在 PHP中可以使用json_decode()由一串规范的字符串解析出JSON对象,使用json_encode()由JSON对象生成一串规范的字符 串。下面就重点介绍这两个函数: json_decode(),字符转JSON,一般用在接收到JavaScript发送的数据时会用到, 代码 <?php $s=‘{“webname”:”homehf”,”url”:”www.homehf.com”,”contact”:{“qq”:”744348666″,”mail”:”nieweihf@163.com”,”xx”:”xxxxxxx”}}‘; $web=json_decode($s); echo ‘网站名称:‘.$web->webname.‘<br />网址:‘.$web->url.‘<br />联系方式:QQ-‘.$web->contact->qq.‘ MAIL:‘.$web->contact->mail; ?> 复制代码 上面的例子中,我们首先定义了一个变量s,然后用json_decode()解析成JSON对象,之后可以按照JSON的方式去使用,从使用情况 看,JSON和XML以及数组实现的功能类似,都可以存储一些相互之间存在关系的数据,但是个人觉得JSON更容易使用,且可以使用JSON和 JavaScript实现数据共享。 json_encode(),JSON转字符,,这个一般在AJAX应用中,为了将JSON对象转成字符串并输出给JavaScript时会用到,而向数据库中存储时也会用到, <?php $s=‘{“webname”:”homehf”,”url”:”www.homehf.com”,”contact”:{“qq”:”744348666″,”mail”:”nieweihf@163.com”,”xx”:”xxxxxxx”}}‘; $web=json_decode($s); echo json_encode($web); ?> 复制代码 在做AJAX应用时,JSON是经常用到的,那么JavaScript中有没有类似PHP的json_decode()函数呢?请看下文。 JavaScript JSON使用 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。它基于JavaScript(Standard ECMA-262 3rd Edition – December 1999)的一个子集。 JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C, C++, C#, Java, JavaScript, Perl, Python等),这些特性使JSON成为理想的数据交换语言。 在PHP中我们可以使用json_decode()和json_encode()来处理JSON对象,那么在JavaScript中呢? 1.创建JSON对象: var tst={ //创建tst,需要注意JSON的格式 ‘webname’:'homehf’, [...]
1. PrintAutoFieldsAdd 载入自定义表单(用于发布): 文件:inc/inc_archives_function.php 行号:472 函数声明:function PrintAutoFieldsAdd(&$fieldset,$loadtype=’all’) 参数: $fieldset:自定义模型的字段集合 $loadtype:价值类型有两种:all ,autofield;autofield 功能说明: 发布自定义模型界面调用时,拼装自定义模型的表单。 2. DedeTagParse Dede织梦模板类 文件:include\dedetag.class.php 行号:70 类声明:class DedeTagParse 方法: LoadSource($str):载入模板字符串,调用data/tplcache/MD5($str).inc的模板文件,然后调用LoadTemplate()方法解析模板 LoadTemplate($filename):载入模板文件 然后调用ParseTemplet()解析模板 ParseTemplet():解析模板 3. 模板列表调用内容模型格式数据写法: {dede:arclist channelid=’18′ addfields=’xuebu,course_author’} [field:course_author/]aaa {/dede:arclist} 说明: Channelid:内容模型管理中的ID号 AddFields:定义的字段名,需要在内容模型管理中的“列表附加字段”中添加 4. 自定义联动类别信息的调用方法: 1)函数编写 打开 /include/extend.func.php 文件(注:本文件为自定义函数接口文件,若不存在,请自行创建),在最后一行的?>上添加如下代码: function Getsysenum($fields,$egroup){ global $dSQL; $row = $dsql->GetOne(“select * from dede_sys_enum where [...]
看到这篇文章的时候本代码首页已经关联其应用了,让新浪微薄的访问量到站上来,让站上的流量到微博上去,都可以的哦,大家都知道dedecms本身没有生成全站xml的,可是让sina微博自动关联站上的文章就不会成功,分两步来实现这个事, 1.让dedecms全站输出xml,2.在sina微博上关联上站点,弄好后站上每发表了文章sina微博就自动发表一篇关于文章的微博。 1.让dedecms全站输出xml。 ①,建立php全站输出文件,新建一个记事本把以下代码贴上然后保存,重命名这个文件为 rss.php 重命名后确保是个php文件, <!–?php require_once (dirname(__FILE__) . "/include/common.inc.php"); require_once DEDEINC."/arc.partview.class.php"; $pv = new PartView(); $pv—>SetTemplet($cfg_basedir . $cfg_templets_dir . "/default/rss.htm"); header("Content-type:application/xml"); $pv->Display(); ?> ②,建立再新建一个记事本把一下代码贴上,保存,重命名为rss.htm,记住把你的网址填上。 <!–?xml version="1.0" encoding="utf-8" ?–> {dede:global.cfg_webname/} {dede:global.cfg_basehost/} {dede:global.cfg_description/} zh-cn {dede:global.cfg_webname/} {dede:global.cfg_adminemail/} {dede:arclist row=’60′ col=’1′ titlelen=’100′ orderby=’pubdate’} http://www.你的网址.com[field:arcurl/] <!–[CDATA[[field:title function='html2text(@me)'/]]]> [field:writer/] [field:typename/] [field:pubdate function='strftime("%a, %d %b %Y %H:%M:%S +0800",@me)'/] http://www.你的网址.com[field:arcurl/] <!–[CDATA[[field:description [...]
[转载]php实现验证码的识别(中级篇) – ugg的专栏 – CSDN博客. 在上篇文章 <php实现验证码的识别 (初级篇 ) > 中,讲了如何识别简单的验证,这里的简单只的是验证码有数字和字母组成,格式统一,每次 出现位置固定。这篇文章将继续深入研究识别验证码,这次识别的目标是,验证码有字符和数字组成,验证码存在旋转(可能左右都旋转),位置不固定,存在字符 与字符之间的粘连,且验证码有更强的干扰素。这篇文章讲解的方法,并不是万能的解决方案,并且提供代码不能直接解决你的问题,这里仅仅是方法,具体需求读 者自己解决,需要说明的是,识别验证码与具体的编程语言无关,这里只是使用 php 语言实现,使用这里介绍的方法,你可以使用任何语言实现。 这篇文章逐步讲解识别验证码过程中的各个步骤。 如上图,随后的讲解我们都围绕此图展开。 一:拿到一个验证码的,第一眼我们首先要做的工作是,二值化。把验证码的部分用 1 表示,背景部分用 0 表示出来,识别方法很简单,我们打印出验证码正张图片的 RGB ,然后分析其规律即可,通过 RGB 码,我们很容易分辨出上面这张图片的 R 值大于 120 , G 和 B 的值小于 80 ,所以依据这个规则我们很容易把上面的图片二值化。再看初级篇中识别的两张图 刚看上去,感觉很复杂。验证码的图片每次背景色都不相同,且不是单色,各个验证码数字的颜色每次也各不相同。貌似很难二值化,其实我们打印出其 RGB 值很容易就发现。无论验证数字颜色如何变化,该数字的 RGB 值总有一个值小于 125 ,所以通过如下判断 $rgbarray['red'] < 125 || $rgbarray['green']<125|| $rgbarray['blue'] < 125 我们就很容易分辨出哪里是数字,哪里是背景。 我们能够找到这些规律的因素是,在制作验证码的干扰素时,为了使干扰素不影响数字的显示效果,必须使用干扰素的 RGB [...]
[转载]WordPress 主题制作技巧之一 [ 为 previous_post_link 等链接添加 title 属性 ] – Liu is Coding – 博客园. 使用 WordPress 自己搭建博客的网友可能越来越多,我用它也有一段时间了,尽管运行效率并不让人满意,但其丰富的插件让人着迷。WordPress 虽然有着众多的免费主题,但我想还是有很多朋友还是倾向于自定义个性鲜明的主题。我打算做一个极其简易的主题,让我的 WordPress 程序像个日记本一样一页一页地翻阅。制作主题和调整程序的过程中遇到一些小问题,本着学习的态度现在把它们记下来,也希望能给遇到这些问题的人提供一点我 的意见。 今天我要说的是:为 previous_post_link 等链接添加 title 属性。 previous_post_link 和 lt_next_post_link 是经常用于单文章页面 single.php 中的用来链接上一篇和下一篇文章的函数,用过这两个函数的人会发现,函数执行结果在前台输出之后,当访客的鼠标滑过时是没有任何提示的,这在有时会造成一 定的不便,为了解决这个问题,我决定给 previous_post_link 和 lt_next_post_link 加上 title 属性。 先找到 previous_post_link、lt_next_post_link 以及与其相关的 adjacent_post_link 函数的代码,其代码位于根目录下的 wp-includes/link-template.php 文件中(大约是在1300多行的样子)。当然可以从这个文件里面直接改 previous_post_link、next_post_link、 adjacent_post_link 这三个函数,但是考虑到 link-template.php 是 WordPress 的核心文件,以后不知道哪次升级时就会被替换,所以我在模板文件夹中的 functions.php 中新建了三个函数 (lt_previous_post_link、lt_next_post_link、lt_adjacent_post_link) ,新建的这三个函数在原来函数的基础上增加了 title 属性。这样我模板文件中调用新建的 lt_previous_post_link 和 lt_next_post_link 来链接上一篇和下一篇文章。 代码如下: 1. previous_post_link、lt_next_post_link、adjacent_post_link 函数的代码 show sourceview [...]


