A. YII 框架通过控制台命令创建每月定时任务 怎么写
先在console/controllers/里新建控制器文件写php,然后在console/scripts/里新建脚本调用控制器(如./yii user/update-code),然后就是在crontab里每月执行一次这个脚本了。
B. php要怎么设置浏览器的console就不显示东西了
php应该操作不了
不过可以借助echo 输出一个script标签
1.如果是只要清除onload之前console的消息
php代码
echo"<script>window.onload=function(){console.clear()}</script>";
//在浏览器加载完成之后清除所有的console
2.如果想让消息一直都不被打印 就需要一个输出一个计时器
php代码
echo"<script>setInterval(function(){console.clear()},1)</script>";
//上面是PHP借助js实现的
3.如果你会一定的前端知识
<script>
setInterval(function(){console.clear()},1);
</script>
把这个复制到需要清除的模板里面即可实现
C. yii2 yii,console 怎么执行
你可以再建模块分组啊
在protected下增加moles
里面每一个文件夹 就是一个分组
分组要求有模块入口文件,view模板包,components包,controllers包。
一般用yii,protected下的controlles只是网站的入口一般,注册、登陆什么的
而网站的具体功能就分为几个模块放到moles里面。
不过因为yii框架比较难用,建立模块分组需要配置文件,写好多模块入口文件,很麻烦,不过也是合理的做法。
D. Yii框架在windows下如何允许控制台命令
确保php已加入环境变量,然后cmd进入console目录,然后在当前目录下执行php yii cron/index,对应CronController的index方法。win下的cronjob不知道咋弄,linux下大概就是这样
*/1 * * * * /usr/local/php/bin/php /data/wwwroot/project_name/console/yii cron/index
E. php中的Yii是什么意思呢,有什么作用呢
Yii是一个基于组件的PHP框架,采用OOP编写
F. PHP中使用YII框架的问题
因为你Users Model的对应的表明没改,在这个Users模型类里,有这样的方法:
public static function tableName()
{
return '{{%users1}}'; // users1是你的新表名
}
而且直接执行Sql查询,好像不是这样用的吧?
我一般都是这样的
Yii::$app->getDb()->createCommand($sql)->queryAll()
Yii::$app->getDb()->createCommand($sql)->queryOne()
Yii::$app->getDb()->createCommand($sql)->excute()
....
区别你可以看看源代码的说明。(Yii2上的用法,yii1.x应该差不多,你稍微改改就应该没问题)
G. php yii 生成模板后将生成好的模板写入txt文本中
yii的render方法有第三个参数,必须设为true才会有返回内容,加上即可:
$file = fopen("index.txt","w");
echo fwrite($file,$this->render( "index", array(), true );
fclose($file);
H. php 怎么使用yii的ccontroller的方法
控制器ID 是一种 '父目录/子目录/控制器名' 的格式,对应相应的控制器类文件 protected/controllers/父目录/子目录/大写首字母的控制器名Controller.php;
动作ID 是除去 action 前缀的动作方法名。
I. php yii框架怎么设置字体编码格式
今天在开发的时候需要将excel文件中数据导入到相关的配置文件中,我按照过去经常使用的方法,先将excel导出成csv文件,然后使用fgetcsv函数读取文件的内容,通过Yii框架中的CConfigure类导出成配置文件,然后在检查的时候发现导出的数组中有些值中间有一些多余的反斜杠,这些反斜杠一般出现在繁体中文或者日文的文字中。
一开始我先检查了csv和excel文件中的字段,发现并没有什么问题,之后我查看了CConfigure类中的saveAsString函数,发现他使用了php中的var_export函数来实现导入配置文件的功能,然后,我又使用var_export输出会出现问题的某个字段,发现确实在字符串中添加了反斜杠,而我直接使用echo或者var_mp输出时,则没有这个情况发生,这个时候我明白问题是出在var_export这个函数上。
在查阅了相关的资料后我发现var_export这个函数会自动转义,也许是这个原因导致了字符串中自动添加了反斜杠,可是字符串本身并没有特殊字符,为什么var_export还是会添加反斜杠,这个让我百思不得其解,我查看了出现问题的字符串的2进制编码,发现出现反斜杠的地方本身的单个字符的ascii码也是反斜杠,也就是说可能是var_export在转义时针对单个反斜杠字符进行了转义?这个原因我最后也没有搞明白。
不过在我不知道如何解决这个问题的时候,我突然想到我的csv的文字编码是gbk的,因为是通过excel直接转的格式,然后我导出的文件编码是utf-8的格式,同时我的代码本身也是utf-8的格式,虽然我最后通过格式转换,成功把gbk的字符串转换成utf-8导出,但是在转换的过程中可能会出现问题(当时想的是这样,不过之后考虑了一下,因为之前在gbk格式下使用var_export已经出现了问题,因此应该不是转换过程中的问题,应该是var_export处理gbk格式的汉字字符串时产生的bug?),于是我将csv文件全部转换成utf-8格式,重新导入文件,成功解决。
其实在解决的过程中,很早就想到可能是编码的问题,但是一直没有发现excel转换的csv文件的格式问题,因为之前导出的配置文件没有汉字,因此没有出现过这一类的问题,于是就忽略了,不过最后虽然解决了问题,但是问题本身的原因还是不明,推测极有可能是因为gbk编码和var_export的兼容导致的问题,果然开发中应该还是尽量使用utf-8统一编码,应该会减少很多不明的错误。
2013.1.19更新:经过思考,觉得应该是对于gbk编码的字符串使用var_export时,函数对于单个字符表示为反斜杠的字符添加了反斜杠的转义,因此使得该处的字符变为两个反斜杠,同时因为在显示时使用了gbk编码,导致添加的反斜杠作为前一个汉字字符的一部分被显示,而原来的反斜杠字符则单独显示了出来。