分类: |

在文章的开始,我首先要声明一点:本篇文章不是讲解的ThinkPHP的多语言转换,而是关于ThinkPHP使用公共语言包来代替模板文件中的汉字的教程.

我们知道,Css方便之处在于它可以让你定义一个样式,只要你修改下这个样式,那么所有的样式都会随之改变,而ThinkPHP的公共语言包功能也是这个原理,我们可以设置一个数组,该数组中包含了模板中用到的语言.如果要修改模板中的多处相同的文字是比较麻烦的,但是如果只是修改数组中的某一项就简单多了.下面我们就来看下,如何在ThinkPHP下建立自己的语言包.

首先,我假设你已经初始化了Thinkphp(生成了文件的架构),在这里就拿我的一个项目为例子来讲解下.

我的项目文件夹是SitePHP(APP_PATH),那么我们首先要配置下语言包的使用环境,我们找到SitePHP/Conf/config.php(如果没有就新建一个)

添加如下语句

 

return array{ 
'LANG_AUTO_DETECT'=> false,
'LANG_SWITCH_ON' => true,
'DEFAULT_LANG' =>'cn', 
}

 

好了,下一步我们需要,在SitePHP/Lang文件夹下建立cn文件夹,因为ThinkPHP系统会自动调用默认语言文件夹下的common.php文件,那么我们就建立一个common.php文件,然后在common.php文件中添加如下内容:

return array( 
'site_name' =>'我的网站', 
'site_keywords' =>'网站,SEO',
)

下面是最关键的一步,(笔者因为忽略了这一步好久没有调用成功),在SitePHP/Conf/下 建立一个tags.php文件,然后加入如下内容

 

return array(
'app_begin'=>
       array('CheckLang'),
);

好了,你已经配置好一切了,可以随便调用了,如果你想在Action中调用,那么可以使用

L(“site_name”)

如果你想在模板中调用,你可以使用{:L(“site_name”)},这样一来如果你想修改网站的名称直接修改site_name的值就可以了,是不是很方便呢?

上面我只是说了一些比较大众的设置,如果你设置了分组,以及TMPL_FILE_DEPR,那么相对就要根据不同的情况来命名语言包了

具体的语言包文件命名规范如下:

项目公共语言包 语言目录/common.php
项目分组语言包 语言目录/分组名.php
项目模块语言包 不存在分组情况:语言目录/模块名(小写).php
存在分组的情况:语言目录/分组名/模块名(小写).php

分组的模块语言包定义受TMPL_FILE_DEPR参数配置影响,如果你修改了TMPL_FILE_DEPR参数,例如:

  1. ‘TMPL_FILE_DEPR’=>’_',

那么,分组的模块语言包定义方式应该改为:
语言目录/分组名_模块名(小写).php

 

 

 

查看更多...

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 5920

centos用户查看

  • 查看系统中有哪些用户:cut -d : -f 1 /etc/passwd
  • 查看可以登录系统的用户:cat /etc/passwd | grep -v /sbin/nologin | cut -d : -f 1
  • 查看用户操作:w命令(需要root权限)
  • 查看某一用户:w 用户名
  • 查看登录用户:who
  • 查看用户登录历史记录:last

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 5067

RPM命令使用详细版


一、RPM包管理的用途;

1、可以安装、删除、升级和管理软件;当然也支持在线安装和升级软件;
2、通过RPM包管理能知道软件包包含哪些文件,也能知道系统中的某个文件属于哪个软件包;
3、可以在查询系统中的软件包是否安装以及其版本;
4、作为开发者可以把自己的程序打包为RPM 包发布;
5、软件包签名GPG和MD5的导入、验证和签名发布
6、依赖性的检查,查看是否有软件包由于不兼容而扰乱了系统;


二、RPM 的使用权限;

RPM软件的安装、删除、更新只有root权限才能使用;对于查询功能任何用户都可以操作;如果普通用户拥有安装目录的权限,也可以进行安装;


三、rpm 的一点简单用法;

我们除了软件包管理器以外,还能通过rpm 命令来安装;是不是所有的软件包都能通过rpm 命令来安装呢?不是的,文件以.rpm 后缀结尾的才行;有时我们在一些网站上找到file.rpm ,都要用 rpm 来安装;

一)初始化rpm 数据库;

通过rpm 命令查询一个rpm 包是否安装了,也是要通过rpm 数据库来完成的;所以我们要经常用下面的两个命令来初始化rpm 数据库;

[root@localhost beinan]# rpm --initdb
[root@localhost beinan]# rpm --rebuilddb 注:这个要花好长时间;

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 5197

Linux rpm 命令参数使用详解

RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”

rpm 执行安装包
二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译、安装。源代码包经常以src.rpm作为后缀名。

常用命令组合:

 

-ivh:安装显示安装进度--install--verbose--hash
-Uvh:升级软件包--Update;
-qpl:列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];
-e:删除包

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 5196

centos 查看,卸载已安装软件

要知道安装了哪些组件,通过命令

rpm -qa|grep httpdrpm -qa|grep mysqlrpm -qa|grep php

分别可以查看本机安装的apache、mysql和php服务。如果返回为空,则说明本机没有安装该服务。

[root@localhost ~]# rpm -qa|grep httpdhttpd-2.2.3-43.el5.centos

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 6141

10 套华丽的 CSS3 按钮推荐

 在过去的Web开发中,通常使用Photoshop来设计按钮的样式。不过随着CSS3技术的发展,你完全可以通过几行代码来定制一个漂亮的按钮,并且还可以呈现渐变、框阴影、文字阴影等效果。此类按钮最大的优势是省去了加载图片的步骤,并且非常易于编辑、扩展和定制,你只需要更改代码即可。 

本文收集了10套基于CSS3的按钮,你可以通过复制粘贴代码到你的CSS文件中来使用这些按钮。但需要注意的是,CSS3需要浏览器的支持,基本上这些按钮可以在大部分现代浏览器中完美呈现,但是在IE中支持还不够好。 

1.  漂亮的CSS3按钮 

 


2.  放射效果按钮 

 

查看更多...

分类:web前端 | 固定链接 | 评论: 0 | 查看次数: 5249

ThinkPHP模板替换与系统常量及应用

默认的模板替换规则:

../Public : 会被替换成当前项目的公共模板目录 通常是 / 项目目录 /Tpl/default/Public/

__PUBLIC__ :会被替换成当前网站的公共目录 通常是 /Public/

__TMPL__ : 会替换成项目的模板目录 通常是 / 项目目录 /Tpl/default/

__ROOT__ : 会替换成当前网站的地址(不含域名)

__APP__ : 会替换成当前项目的 URL 地址 (不含域名)

__URL__ : 会替换成当前模块的 URL 地址(不含域名)

__ACTION__ :会替换成当前操作的 URL 地址 (不含域名)

__SELF__ : 会替换成当前的页面 URL

 

还可以通过在项目配置文件中配置TMPL_PARSE_STRING的值来自定义替换规则,如:

TMPL_PARSE_STRING  => array(

      '__PUBLIC__' =>  '/Common' ,   //  更改默认的 __PUBLIC__ 替换规则

      '__UPLOAD__' =>  '/Public/Uploads/' ,   //  增加新的上传路径替换规则

)

查看更多...

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 5631

方法一
CentOS5.3的php版本默认为5.1.6,然后在5.2.9版本之前的的php都存在一个漏洞,但是目前网上很多地方都无法使用yum update php*升级到5.2.9,比较常见的是升级到5.2.6版本的,经过搜索国外资料,现在终于找到一种升级CentOS的php到5.2.9的方法。
注意,此方法只能在官方的php版本上升级,如果你使用网上的升级到5.2.6版本的升级方法已经升级了,将无法使用本方法升级php。
运行下面命令:

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 5569

CentOS 6下搭建Apache+MySQL+PHP+SSL

 网上的一些文章都已经比较老了,现在版本高了之后,其实配置是很省力的(不考虑什么负载的话)

分享全过程,出了文中提到的安装epel rpmfushion 源指令不同外,其他的过程也适用与Centos 5

 

1.安装CentOS 6 ,可以选择最小安装,也可以安装桌面

2.升级系统

yum update

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 5499

ThinkPHP笔记——开启debug调试模式

 debug+trace模式可以查看开发过程中TP的错误信息,可以更好地帮助开发者debug。但是debug模式的开启还不是简单的在配置文件中中设置就可以的,经过查资料摸索,找到一种有效的方法。
首先在你已经部署好了ThinkPHP的项目目录
 
然后注意是在入口文件开启调试模式,在入口文件index.php 中写入一下代码define(‘APP_DEBUG’,true); 首先删除Runtime目录 ,然后再次运行一下,你会发现runtime目录下面的~runtime.php 文件没有了,说明你的调试模式开启成功了
 
之所以这个~runtime.php文件删除 ,这个文件是编译后的文件 会有缓存,所以在调试模式期间我们不用担心因为缓存而造成其他错误
 
trace页面的 也是我们开发者获取错误信息的而一个途径,所以我们需要开启trace页面,在THinkPHp3.0版本中trace页面是默认没有开启的,需要我们手动 的在项目配置文件中添加
 
‘SHOW_PAGE_TRACE’        =>true,   // 显示页面Trace信息
 
想要看看trace信息是否开启了,只要我们在 IndexAction.class.php 中的index方
 
法中加上$this->display();
 
 
 
然后再次运行如果你看到了如下界面,说明你的调试模式,以及trace 以及开启了

 

查看更多...

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 8786

向mysql添加新用户并分配权限

 一.Ubuntu下启动mysql方法:

/etc/init.d/sudo mysqld
二.用户添加
bin>mysql -u root
mysql> grant 权限1,权限2,...权限n on 数据库名称.表名称 to 用户名@用户地址 identified by '连接口令';
权限1,权限2,...权限n代表select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,file等14个权限。
当权限1,权限2,...权限n被all privileges或者all代替,表示赋予用户全部权限。
当数据库名称.表名称被*.*代替,表示赋予用户操作服务器上所有数据库所有表的权限。
用户地址可以是localhost,也可以是ip地址、机器名字、域名。也可以用'%'表示从任何地址连接。
'连接口令'不能为空,否则创建失败。
例如:
mysql>grant select,insert,update,delete,create,drop on vtdc.employee to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert,update,delete,create,drop等操作的权限,并设定口令为123。
mysql>grant all privileges on vtdc.* to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on *.* to joe@10.163.225.87 identified by '123';
给来自10.163.225.87的用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。
mysql>grant all privileges on *.* to joe@localhost identified by '123';
给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 4309

mysql 如何更改root密码

 方法一

使用phpmyadmin,这是最简单的了,修改mysql库的user表, 不过别忘了使用PASSWORD函数。  方法二 使用mysqladmin,这是前面声明的一个特例。 mysqladmin -u root -p password mypasswd 输入这个命令后,需要输入root的原密码,然后root的密码将改为mypasswd。 把命令里的root改为你的用户名,你就可以改你自己的密码了。 当然如果你的mysqladmin连接不上mysql server,或者你没有办法执行mysqladmin, 那么这种方法就是无效的。 而且mysqladmin无法把密码清空。  下面的方法都在mysql提示符下使用,且必须有mysql的root权限: 方法三 mysql> Insert INTO mysql.user (Host,User,Password) VALUES(%,jeffrey,PASSWORD(iscuit)); mysql> FLUSH PRIVILEGES 确切地说这是在增加一个用户,用户名为jeffrey,密码为biscuit。 在《mysql中文参考手册》里有这个例子,所以我也就写出来了。 注意要使用PASSWORD函数,然后还要使用FLUSH PRIVILEGES。  方法四 和方法三一样,只是使用了REPLACE语句 mysql> REPLACE INTO mysql.user (Host,User,Password) VALUES(%,jeffrey,PASSWORD(iscuit)); mysql> FLUSH PRIVILEGES  方法五 使用SET PASSWORD语句, mysql> SET PASSWORD FOR jeffrey@"%" = PASSWORD(iscuit); 你也必须使用PASSWORD()函数, 但是不需要使用FLUSH PRIVILEGES。  方法六 使用GRANT ... IDENTIFIED BY语句 mysql> GRANT USAGE ON *.* TO jeffrey@"%" IDENTIFIED BY iscuit; 这里PASSWORD()函数是不必要的,也不需要使用FLUSH PRIVILEGES。 注意: PASSWORD() [不是]以在Unix口令加密的同样方法施行口令加密。

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 3983

VSFTP开启PASV模式

 今天deepvps配置一个VPS的VSFTP后,发FTP居然不能用。连接FTP的时候提示PASV 模式失败,尝试 PORT  模式。后来发现是iptables防火墙挡住了PASV的端口。放开端口就好了。

VSFTP的配置很简单,不再多说。但在有iptables的情况下,要开启pasv模式,是要作一些配置的。

/etc/vsftpd/vsftpd.conf
未尾添加:

pasv_enable=YES
pasv_min_port=40000
pasv_max_port=40080
pasv_promiscuous=YES

/etc/sysconfig/iptables
加入:

-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 21 -j ACCEPT
-A RH-Firewall-1-INPUT -m state –state NEW -m tcp -p tcp –dport 40000:40080 -j ACCEPT

 

重启iptables & vsftpd,就可以使用pasv模式了。

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 7572

linux下添加,删除,修改,查看用户和用户组

1,创建组

groupadd test

增加一个test

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 5140

CentOS学习笔记

2012/10/30

永久开启服务

chkconfig iptables on/off

chkconfig iptables reset

查看更多...

分类:linux教程 | 固定链接 | 评论: 0 | 查看次数: 6028

Firefox,Chrome修改缓存

Firefox修改缓存路径

地址栏输入 about:config,右键新建两个字符串。一个名为: "browser.cache.disk.parent_directory" (硬盘缓存),然后输入新的缓存文件存储路径;另一个名为:"browser.cache.offline.parent_directory"(脱机缓存),然后输入新的脱机缓存文件的路径,一般情况下,硬盘文件缓存路径和脱机缓存路径可以保持一致。比如 D:\Temporary Internet FilesF:\Firefox Temporary 等。设置后缓存路径之后,还需要再进行检查 browser.cache.disk.enablebrowser.cache.offline.enable两个字符串的值必须为 true 才可以保障设置的缓存路径有效。

以上设置好了之后,可以在地址栏输入 about:cache,可以看到缓存目录已经改变了,这样就可以不必担心缓存文件过大而影响系统运行效率了。

Chrome修改缓存路径

用到的几个命令参数:
--disk-cache-size 缓存大小(自己定义)
--user-data-dir 是用户数据目录
--disk-cache-dir是上网缓存目录

使用方法:

(比如用户数据user-data)
找到Chrome.exe的快捷方式,  右键——属性——快捷方式——目标
在chrome.exe"后面添加 --user-data-dir="X:\文件夹"
添加好以后是这样的:C:\Users\用户\AppData\Local\Google\Chrome\Application\chrome.exe  --user-data-dir="D:\Chrome"(注:英文状态标点,注意空格)

查看更多...

分类:智慧人生 | 固定链接 | 评论: 0 | 查看次数: 4863

基于Thinkphp的开源CMS系统即将面世

本CMS系统基于Thinkphp开发而成,旨在提供中小型企业网站和地方门户的解决方案。由于本CMS系统是使用Thinkphp开发的,而又由于Thinkphp的简单易学(大道至简,开发由我),所以本系统可以很方便的增减功能,非常的适合于二次开发。

主要特色:

1.基于Thinkphp开发,非常适合于二次开发。(这也是本系统的初衷)

2.完整的后台系统,包含网站栏目管理,文章管理,会员管理,管理员设置,系统变量设置等常用模型。

查看更多...

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 10692

 今天做一个企业站,需要实现这么个功能,参考了一下网上的资料。实现了这么个功能!

可以实现多个字段的筛选

所有改动均在arc.listview.class.php这个文件中

1.大概在45行左右,添加如下代码

查看更多...

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 6841

PHP5.4下DEDE登录后白板的解决方法

  dede安装完成后登录后台出现空白,经过分析代码,发现登录验证的时候用到了这个函数session_register() 原来我的php版本是5.4版本的,经过一系列的搜寻,发现这个函数在PHP5.4版本中已经被弃用了,已经被删除了。 也就是这个函数不再可用了。直接注释掉就可以了,不用进行注册就可以声明session。

 

另外的解决方法就是在include/userlogin.class.php 中声明一个函数

查看更多...

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 5768

64位Win7激活工具