PHP字符串中的大括号
<?php
class Model_Data_FocusData{
....
public function getData(){...}
}
class Model_Data_IndexData{
....
public function getData(){...}
}
?>
有这么几个类,希望能够自动的根据参数来调用不同的类处理数据。
看调用模块:
<?php
function getData($act){
$class = "Model_Data_{$act}Data";
$model = new $class();
return $model->getData();
}
?>
这个块看起来没有一点问题,在WAMP下运行也没有问题。
但是移植到LAMP后,发现执行到这一段代码的时候中断了。
问题在哪里呢?
$class = "Model_Data_{$act}Data";
$model = new $class();
看这里,"Model_Data_{$act}Data"; 换成 "Model_Data_".$act."Data";后,这段代码又通过了。
由此得出结论:
php字符串中加入大括号引用变量时,并没有立即处理该变量,而是最终使用的时候处理,比如:echo的时候,echo这个命令具有解析字串中变量功能,而 new 关键词显然不具备。
相关文档:
今天想使用这一句php来判断一个文件是否存在: echo is_file('/var/downloads/donkey/incoming/[当地球停止转动].The.Day.The.Earth.Stood.Still.DVDRip.XviD-DMT.avi')?"true":"false";
echo is_file('/var/downloads/donkey/incoming/[当地球停止转动].The.Day.The.Earth.Stood.Still.DVDRip.XviD-DMT.avi')?"t ......
前言:
多语言网站开发,重点的还是在解决语言之间的问题。
那如何解决这个问题呢?大概就分三步走:
1.页面多语言
2.数据库多语言
3.用户访问语言统一
1.页面多语言
需要考虑的问题:
A.用户登陆时候,自动识别字符,调用不同的语言包?
B.用户切换不同语言时候,调用不同的语 ......
之前PHP实现多语言国际化,大部分都会采用把语言直接提出来作为数组来调用,例如比较有名phpMyadmin,discuz等知名开源系统,不过,这里介绍如何通过gettext,即用资源文件来实现。典型的CMS案例-wordpress也是通过它实现的语言国际化,下面来说下php中如何来利用配置文件实现国际化的。
首先介绍下.MO文件,在PHP中是利用 ......
在PHP网站开发中,为了满足网站的需要,时常需要对PHP环境变量进行设置和应用,在虚拟主机环境下,有时我们更需要通过PHP环境变量操作函数来对PHP环境变量值进行设置。为此我们有必要对PHP环境变量先有所熟悉。今天和大家分享PHP环境变量$_SERVER和PHP系统常量的部分详细说明。
PHP环境变量主要有$GLOBALS[]、$_SERVER ......
系统及软件版本
FreeBSD 7.3
Apache-2.2.14-5[ 1.3.42(Unix)]
PHP-5.2.12
MySQL-5.0.90
Freebsd通过port安装nginx
Nginx ("engine x") 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,它已经在该站点运行超过两 ......