工作总结第二天

来源:互联网 发布:局域网共享文件软件 编辑:程序博客网 时间:2024/06/07 00:23

一 ,jquery form 的使用 ,地址:https://github.com/jquery-form/form

首先明确,form表单中不能嵌套form表单,然后一个页面可以有多个form表单。


一个简单示例 : 前提 ,引入 jquery 和 jquery form 两个 js 文件  ,可参考 :http://blog.csdn.net/qq_28602957/article/details/53612885


HTML :

                    <form id="tab2" action="" method="post" enctype="multipart/form-data">
                        <!-- <input type="file" name="myfile" /><br>
                        <input type="submit" value="Upload File to Server"> -->
                        <input type="file" name="myfile" id="upload" class="upfile" onchange="document.getElementById('upfileResult').innerHTML=this.value">
                        <span id="upfileResult" class="newfileResult"></span>
                        <input class="upFileBtn" type="button" value="浏览" onclick="document.getElementById('upload').click()">
                    </form>


JS:


<script>
    $('#upload').change(function(){
      $('#tab2').submit();
    });

    $(function(){
      $('#tab2').ajaxForm({
          url : "<?=Yii::$app->urlManager->createUrl('/Message/sms/import'); ?>",
          success: function(data) {//成功
          alert(data);
          },
          error:function(err){//失败
          alert("表单提交异常!"+err.msg);
          },
          // complete: function(xhr) {//完成
          //     status.html(xhr.responseText);
          // }
      });
    })
</script>

这个例子只演示了文件的上传,要知道使用这个插件不仅仅可以上传文件,还有图片和任何name属性中的值

2,yii 框架中新建的module会默认使用defaultController 这个控制器,如果想要改变它需要在/config/web.php中指定这个模块的defaultRoute或者在module.php中指定这个defaultRoute属性也行。

3.yii 框架中使用gii生成modules时最好指定到modules\admin\这样的具体模块下,而不是使用modules作为一个模块,另外就是有时生成的模块入口文件可能未生成成功,可删除掉已生成的文件再次重新生成一次

4,yii中所有的静态文件都使用asstes这个目录的资源,不同模块应该可以自定义,还未尝试

5.phpExcel类的使用。可直接读取xls和xlsx文件的内容而无需必须转成csv  ,下载地址,https://github.com/PHPOffice/PHPExcel,这个类不仅可读,而且可生成excel以及生成pdf和html等,参考 http://blog.csdn.net/diandian_520/article/details/7827038。

6,使用str_replace 替换了路径中的反斜线为斜线 str_replace('\\','/',$file_name);  参考 :mixedstr_replace (mixed$search ,mixed$replace ,mixed$subject [,int&$count ] )

7,使用了pathinfo来获取文件的后缀名  pathinfo($filename)['extension']; 当然获取方式有很多,比如 strrchr( ' .' ,$filename) ,或者explode(' .',$filename ) 然后end( $arr )即可,当然数组的操作就多了,比如逆向排序后取出第一个或者array_pop弹出最后一个,或者array_slice( $arr,-1,1)

8,array_filter 的使用,这个函数可以用回调函数来循环处理传进来的数组单元的每个值,过滤后的单元为真则进入将要被返回的新数组,如果没有回调函数则字符串为真也会进入新数组,参考:

array array_filter ( array$array [,callable$callback [,int$flag = 0 ]] )

依次将 input 数组中的每个值传递到 callback 函数。如果 callback 函数返回 TRUE,则input 数组的当前值会被包含在返回的结果数组中。数组的键名保留不变。


9,除了同2进行取模运算外,使用php 的位运算也能够做到,那就是让所有数与1进行按位与 (&),比如:

3 & 1
00000011
00000001
00000001
4 &1
00000100
00000001
00000000

因为1的二进制满位时是 00000001,所以任何数字只有最后一位为1时才能有值。

可以得证,所有奇数与1按位与后的结果均为1,所有偶数与1按位与后的结果均为0

10,ajax 用var_dump() 返回时在网络请求里面看返回结果,不要等success

11, 禁止enter提交表单 :onkeydown="if(event.keyCode==13)return false; 参考 :http://www.jb51.net/article/50006.htm



原创粉丝点击