格式化数据表名称(格式化为适用THINKPHP调用的)
/*
* 格式化完整的表名称(格式化为适用THINKPHP调用的)
* @access private
* @param String $string 传入字符串类型数据表名称(例如:xxx_xxx)
* @return String
* @author: 只是、很孤单 <939238564@qq.com>
*/
protected function SqlFormat($string){
$strArr = explode("_", $string);
foreach ($strArr AS $key=>$val){
if($key != 0){
$Fstr .= ucfirst($val);
}else{
continue;
}
}
return (string)$Fstr;
}
有了上述方法的基础上可以像这样便捷的调用不同表的数据:
$MTable = M($this->SqlFormat($string));
作用:
例如,要通过文章的ID获取它的一个扩展表名称;
在DEDE中,扩展表名称是 “前缀_扩展模型名称” 这样的格式;
而在TP中,要去访问某个数据表,必须去除前缀且首字母大写!
那么通过上述方法,可以返回适合TP M实例化用的数据表名称!
如数据表名称:dede_member_feed
转化后为:MemberFeed
这样就更为符合TP标准;多次调用也免去了代码的冗余;
有不足的还望大家指出,完善它;