脚本宝典收集整理的这篇文章主要介绍了php – 如何在RedBean属性中存储array()?,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
$post = (array) json_decode($post); $pushUser->dagen = (array) $post['days'];
帖子的“天”部分是:
[dagen] => Array ( [0] => Monday [1] => Wednesday )
我想做的就是将$pushUser-dagen存储在数组中,天数为:)…非常简单吧?
但后来我得到了这些错误:
解决方案取决于您稍后要对此信息执行的操作.你想添加其他东西,而不仅仅是工作日,比如晚上或加班(如果安排?),在这种情况下,我会选择最灵活,最简单的解决方案:
//Flexible solution foreach($days as $day) $user->sharedDay[] = R::findOne('day',' name = ? ',array($day));
因为我们使用sharedDay而不是ownDay,所以记录不会重复.此解决方案创建了一个整洁的链接表day_user.
当然,您需要在数据库中存储一周的工作日:
$days = array('monday',...); foreach($days as $dayname) { $d = R::disPEnse('day'); $d->name = $dayname; R::Store($d); }
如果您希望能够快速跟踪具有特定工作日配置文件的用户,则可能需要对日期进行编码:
//Performance solution function days($days) { $weekdays = array('sunday','monday','tuesday',...); $field = ''; foreach($weekdays as $day) { $field .= (in_array($day,$days)) ? '1' : '0'; } return $field; } $user->days = bindec(days($days));
在这种情况下,您可以通过查询找到每个具有“星期一”和“星期六”的用户:天= 33.这真的很快.
如果您根本不关心数据,可以选择:
//Quick and dirty solution $user->days = implode(',',$days);
以上是脚本宝典为你收集整理的php – 如何在RedBean属性中存储array()?全部内容,希望文章能够帮你解决php – 如何在RedBean属性中存储array()?所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。