关于ThinkPHP使用公共语言包的问题总结
作者:admin 日期:2012-11-12
在文章的开始,我首先要声明一点:本篇文章不是讲解的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参数,例如:
- ‘TMPL_FILE_DEPR’=>’_',
那么,分组的模块语言包定义方式应该改为:
语言目录/分组名_模块名(小写).php
centos用户查看
作者:admin 日期:2012-11-11
RPM命令使用详细版
作者:admin 日期:2012-11-10
一、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 rpm 命令参数使用详解
作者:admin 日期:2012-11-10
RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”
rpm 执行安装包
二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,而源代码包将会由RPM自动编译、安装。源代码包经常以src.rpm作为后缀名。
常用命令组合:
-Uvh:升级软件包--Update;
-qpl:列出RPM软件包内的文件信息[Query Package list];
-qpi:列出RPM软件包的描述信息[Query Package install package(s)];
-qf:查找指定文件属于哪个RPM软件包[Query File];
-Va:校验所有的RPM软件包,查找丢失的文件[View Lost];
-e:删除包
centos 查看,卸载已安装软件
作者:admin 日期:2012-11-10
10 套华丽的 CSS3 按钮推荐
作者:admin 日期:2012-11-06
在过去的Web开发中,通常使用Photoshop来设计按钮的样式。不过随着CSS3技术的发展,你完全可以通过几行代码来定制一个漂亮的按钮,并且还可以呈现渐变、框阴影、文字阴影等效果。此类按钮最大的优势是省去了加载图片的步骤,并且非常易于编辑、扩展和定制,你只需要更改代码即可。
本文收集了10套基于CSS3的按钮,你可以通过复制粘贴代码到你的CSS文件中来使用这些按钮。但需要注意的是,CSS3需要浏览器的支持,基本上这些按钮可以在大部分现代浏览器中完美呈现,但是在IE中支持还不够好。
1. 漂亮的CSS3按钮
ThinkPHP模板替换与系统常量及应用
作者:admin 日期:2012-11-01
默认的模板替换规则:
../Public : 会被替换成当前项目的公共模板目录 通常是 / 项目目录 /Tpl/default/Public/
__PUBLIC__ :会被替换成当前网站的公共目录 通常是 /Public/
__TMPL__ : 会替换成项目的模板目录 通常是 / 项目目录 /Tpl/default/
__ROOT__ : 会替换成当前网站的地址(不含域名)
__APP__ : 会替换成当前项目的 URL 地址 (不含域名)
__URL__ : 会替换成当前模块的 URL 地址(不含域名)
__ACTION__ :会替换成当前操作的 URL 地址 (不含域名)
__SELF__ : 会替换成当前的页面 URL
还可以通过在项目配置文件中配置TMPL_PARSE_STRING的值来自定义替换规则,如:
TMPL_PARSE_STRING
)
CentOS 5.3 通过yum升级 php到最新版本的方法
作者:admin 日期:2012-11-01
CentOS 6下搭建Apache+MySQL+PHP+SSL
作者:admin 日期:2012-11-01
ThinkPHP笔记——开启debug调试模式
作者:admin 日期:2012-10-31
向mysql添加新用户并分配权限
作者:admin 日期:2012-10-31
一.Ubuntu下启动mysql方法:
mysql 如何更改root密码
作者:admin 日期:2012-10-31
方法一
使用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口令加密的同样方法施行口令加密。
VSFTP开启PASV模式
作者:admin 日期:2012-10-31
今天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下添加,删除,修改,查看用户和用户组
作者:admin 日期:2012-10-30
CentOS学习笔记
作者:admin 日期:2012-10-30
Firefox,Chrome修改缓存
作者:admin 日期:2012-10-30
Firefox修改缓存路径
地址栏输入 about:config,右键新建两个字符串。一个名为: "browser.cache.disk.parent_directory" (硬盘缓存),然后输入新的缓存文件存储路径;另一个名为:"browser.cache.offline.parent_directory"(脱机缓存),然后输入新的脱机缓存文件的路径,一般情况下,硬盘文件缓存路径和脱机缓存路径可以保持一致。比如 D:\Temporary Internet Files或F:\Firefox Temporary 等。设置后缓存路径之后,还需要再进行检查 browser.cache.disk.enable和browser.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"(注:英文状态标点,注意空格)