来自:http://www.tantengvip.com/2013/12/phpcms-php-function/

phpcms后台内容模块->模型管理->添加字段功能很强大,你只需在phpcms的后台面板进行操作,不用在数据库中手动建表,也不用操作数据库增加或删除字段,添加好了字段和类型,发布内容的时候,表单上自动显示你要的字段和类型,这样方便了很多,包括表单验证,排序等所有功能都做好了。

phpcms还提供了一个字段叫万能字段,用户可以自定义字段的更多功能。

设置自定义表单:

<input type='text' name='info[game_swf]' value='{FUNC(show_date~~{FIELD_VALUE})}'>

比如这里有个文本框,我需要在填写表单的时候,框子中默认显示一个路径,/yx/swf/201312/,然后后面内容再人工填写,所以只能选择phpcms里的万能字段,但是value里面不能写{php …}这样的形式,也不能用<?php … ?>语法,它都会给你过滤掉。

这个时候要用到phpcms提供的一个调用函数的方式,语法是{FUNC(function~~params)},这样就可以调用自定义的php方法了,function是函数名,两个~~后面接着是参数。

比如我在phpcms扩展函数文件extension.func.php里添加了函数:

/**
* game_swf万能字段判断如果添加的时候默认显示/yx/swf/201306/
*/
function show_date($field){
if(''==$field){
return '/yx/swf/'.date("Ym").'/';
}else{
return $field;
}
}

它的功能是传入表单的value值{FIELD_VALUE},如果为空则显示’/yx/swf/’.date(“Ym”).’/’,否则编辑的时候就原样显示。这样就解决了问题。

这也是万能字段万能的所在。

phpcms万能字段如何使用php方法的更多相关文章

  1. phpcms万能字段的使用方法

    今天想做一个单选的字段,里面要使用别的字段,于是研究了一下万能字段!刚开始使用的时候,在网上,论坛里找了好久,没发现一个贴子有针对万能字段的使用说明,官方的例子里也只有一个调用字段本身值的变量 {FI ...

  2. phpcms v9联动菜单的调用方法_详解get_linkage函数

    phpcms v9联动菜单调用方法[此为内容页调用方法]: {get_linkage($areaid,1,' >> ',1)} 显示效果: phpcms吧 >> 模板下载 &g ...

  3. [.net 面向对象编程基础] (10) 类的成员(字段、属性、方法)

    [.net 面向对象编程基础] (10) 类的成员(字段.属性.方法) 前面定义的Person的类,里面的成员包括:字段.属性.方法.事件等,此外,前面说的嵌套类也是类的成员. a.类的成员为分:静态 ...

  4. Oracle中中文、数字,英文混杂形式的字段进行排序的方法

    http://blog.csdn.net/p451933505/article/details/9272257 对Oracle中中文.数字.英文混杂形式的字段进行排序的方法: 例如: order by ...

  5. hibernate update 只更新部分字段的3种方法(转载)

    hibernate 中如果直接使用 Session.update(Object o); 会把这个表中的所有字段更新一遍. 比如: public class Teacher Test { @Test p ...

  6. hibernate update 只更新部分字段的3种方法(其实我只想说第二种)

    hibernate 中如果直接使用Session.update(Object o);会把这个表中的所有字段更新一遍. 比如: public class Teacher Test { @Test pub ...

  7. @NamedEntityGraphs --JPA按实体类对象参数中的字段排序问题得解决方法

    JPA按实体类对象参数中的字段排序问题得解决方法@Entity @Table(name="complaints") @NamedEntityGraphs({ @NamedEntit ...

  8. mongoose中给字段添加索引的方法

    mongoose中给字段添加索引的方法有两种,一种通过在定义schema的时候配置,如: var animalSchema = new Schema({ name: String, type: Str ...

  9. 【EF】EntityFramework 更新数据库字段的三种方法

    实体类 public class TestDbContext : DbContext { public DbSet<Test> Tests { get; set; } public Tes ...

随机推荐

  1. cobbler重装、web、定制化

    cobbler重装 根据此文已自动化安装centos 7的版本http://www.cnblogs.com/shhnwangjian/p/5858900.html 在cobbler-test主机上重装 ...

  2. Mybatis的mapper文件中$和#的区别

    一般来说,我们使用mybatis generator来生成mapper.xml文件时,会生成一些增删改查的文件,这些文件中需要传入一些参数,传参数的时候,我们会注意到,参数的大括号外面,有两种符号,一 ...

  3. Python字典和集合

    Python字典操作与遍历: 1.http://www.cnblogs.com/rubylouvre/archive/2011/06/19/2084739.html 2.http://5iqiong. ...

  4. JQuery------prevAll(),nextAll(),attr()方法的使用

    $(this).nextAll(".Rec").find("input").attr("checked", false); $(this). ...

  5. vbox 网络配置文件

    sz /etc/sysconfig/network-scripts/ifcfg-eth1 #VAGRANT-BEGIN # The contents below are automatically g ...

  6. 10月21日上午MySQL数据库学习内容复习

    1.创建数据库create database 数据库名称删除数据库drop database 数据库名称 2.创建表create table 表名(列名 类型(长度) 自增长 主键 非空,)自增长:a ...

  7. python开发_++i,i += 1的区分

    python开发_++i,i += 1的区分 在很多编程语言(C/C++,Java等)中我们都会碰到这样的语法: 1 int i = 0; 2 ++ i; // -- i; 这样的语法在上述编程语言中 ...

  8. MAFFT多重序列比对--(附比对彩标方法)

    [转记]MAFFT多重序列比对图解教程 [絮语] 一提到多重序列比对,很多人禁不住就想到ClustalW(Clustalx为ClustalW的GUI版),其实有一款多重序列比对软件-MAFFT,不论从 ...

  9. linux程序调试命令strace

    strace命令用法详解: strace常用来跟踪进程执行时的系统调用和所接收的信号. 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须 ...

  10. 【phpcms-v9】phpcms-v9二次开发所必须知道的步骤(转载)

    一.做phpcms-v9二次开发时,我们经常需要用到如下代码,所以有必须在这里注释说明一下 defined('IN_PHPCMS') or exit('No permission resources. ...