在我们正在开发的应用程序中(iOS/Swift,Android),我们有一个设置页面,用户可以在其中选择哪些天接收推送通知。其中之一的设置是让用户选择每周的哪几天。
我的问题是如何将此选项存储为一个变量,而不是七个布尔值。这个设置将被发送到服务器/数据库进行存储,我想我们可以在数据库中使用单个字节字段。
我想使用“10001010”这样的二进制数来表示这个选项,其中1表示选中,0表示未选中,例如“monday=true(1),tuesday=false(0)”(假设星期一是一周的第一天)。
这种方式是否可行?我能否创建这样的字节?或者更常见的做法是使用字符串/char[] "10001010"吗?或者数据库(例如MySQL)是否可以将bool[](10001010)存储为一个字段?还是有其他更好的做法?
当然,某些变化需要服务器使用相同的逻辑来处理变量,但在这种情况下并没有问题。
简单地说,我需要七个布尔值,分别代表每周的七天,并且希望以比每天一个变量更高效的方式存储它。是否有最佳实践?
我的问题是如何将此选项存储为一个变量,而不是七个布尔值。这个设置将被发送到服务器/数据库进行存储,我想我们可以在数据库中使用单个字节字段。
我想使用“10001010”这样的二进制数来表示这个选项,其中1表示选中,0表示未选中,例如“monday=true(1),tuesday=false(0)”(假设星期一是一周的第一天)。
这种方式是否可行?我能否创建这样的字节?或者更常见的做法是使用字符串/char[] "10001010"吗?或者数据库(例如MySQL)是否可以将bool[](10001010)存储为一个字段?还是有其他更好的做法?
当然,某些变化需要服务器使用相同的逻辑来处理变量,但在这种情况下并没有问题。
简单地说,我需要七个布尔值,分别代表每周的七天,并且希望以比每天一个变量更高效的方式存储它。是否有最佳实践?
1010000
或x-x----
这样的字符串。如果数据库列不需要支持更多的基本CRUD功能(例如在这些列上没有排序、没有连接等),您也可以将设置保存为JSON字符串等。 - Thomas