您的位置:首页 > 其它

第55篇一对多实现之私有白板向老师端传图片数据(二)及array_reduce

2017-02-25 09:32 211 查看
关键词:一对多实现,
私有白板向老师端传图片数据, array_reduce

一、私有白板向老师端传图片数据

1.1 服务器运行平台

老师端:https://123.57.206.36:9100/demos/index.html?roomid=888

学生一:

https://123.57.206.36:9100/demos/student.html?studentId=1001&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1479740395ZMJkiF.jpg#888

学生二:                            

https://123.57.206.36:9100/demos/student.html?studentId=1002&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1480494624FDjMGetutor.png#888

学生三:

https://123.57.206.36:9100/demos/student.html?studentId=1003&userAvatar=http://123.57.206.36:8003/uploadfiles/2016/11/1480475198N2F0kntutor.png#888

1.2 UI图



1.3 学生端iframe发消息向老师端

  发现学生和老师发消息时,有点问题,老提示studentId未定义。修改后如下:

if(typeof event.extra == 'object'&& event.extra.studentId != undefined){

              //动态加载学生头像

           studentId=event.extra.studentId;

           console.log('studentId',studentId);

           userAvatar=event.extra.userAvatar;

 

           if($.inArray(studentId, studentIdArray)<=-1){

                 //动态追加学生头像

               $("#studentIdSet").append(" <div><imgsrc="+userAvatar+" width='30px';height='30px'></div>");

                //把学生id追加到数组中,供下次判断

                studentIdArray.push(studentId);

           }

}



注:这个限制表明,老师向学生发消息时,不会走这个判断,因为老师向学生发消息的格式如下:

学生向老师发消息,会走这个,但因为里面没有return,会接着向下走,我之前写的代码里面有return就不成,如下:



这样的话,学生发消息,老师收不到。因为进了这个判断就return掉了。

1.4 怎么获取私有白板的DataURL

   现在获取的是当学生共享白板上的DataURL,如下:



但现在要求的是获取私有白板上的DataURL,如下:



二、php

2.1 PHP array_reduce() 函数

1)定义和用法

array_reduce() 函数发送数组中的值到用户自定义函数,并返回一个字符串。

注释:如果数组是空的或者初始值未传递,该函数返回 NULL。

2)语法

array_reduce(array,myfunction,initial)



3)看个例子一如下:

带 initial 参数:



注:有个自带的参数,返回一个按自定义函数生成的字符串。

4)看个例子二如下:



注:上述中的第三个参数(本例中为:5)表示发到自定义函数中处理的第一个值。

5)看个例子三如下:



注:如果第三个参数没有的话,返回结果中先出现连接符,其实是为了连接第三个参数准备的。

2017年2月24日星期五
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐