草庐IT

存储算法

全部标签

php - 存储网站设置的最佳实践?

最初,我的意图是创建一个类(面向对象)来将设置存储为常量。例如,在PHP中:classSettings{consttest='foobar!';}但后来,我认为这种方法不会让Admin用户修改这些设置。好像只有不需要修改的设置才声明为常量,其他的声明为私有(private)变量,然后应用程序会先在数据库设置表中查找设置是否可用,如果没有,则使用默认值来自Settings类中定义的get()、set()函数。这是一个好方法吗?什么是最好的方法?我很感激关于这个问题的任何建议。 最佳答案 我更喜欢与您的方法类似,但使用带有getter和

php - 如何在 PHP 中展开多维数组(原始键访问路径存储为单个键)?

我正在使用以下函数来展平多维数组:functionflatten($array,$prefix=''){$result=array();foreach($arrayas$key=>$value){if(is_array($value)){$result=$result+flatten($value,$prefix.$key.'.');}else{$result[$prefix.$key]=$value;}}return$result;}我想创建一个匹配函数,unflatten,它将反转该过程(例如,如果键中有.,则创建一个子数组)。有什么想法吗? 最佳答案

PHP:存储登录用户

当用户登录网站时,我需要以某种方式存储登录的用户ID,以便我的网站可以为不同的用户生成不同的内容。将用户ID保存在$_SESSION[]变量中是否安全?用户是否可以更改$_SESSION[]数据并伪装成另一个用户?我使用id来检查我应该从数据库中获取哪些数据,以及查看用户拥有哪些权限。 最佳答案 公认的最佳做法是在session中保存用户ID。默认情况下,session作为文件存储在/tmp中。除非您有诸如directorytraversal之类的安全问题,否则最终用户无法查看它漏洞。大多数应用程序都像您一样使用$_SESSION。

php - 存储数据的数组或对象 - 什么是更好的解决方案

我只是在想什么可以给我更好的性能和内存使用率。我正在为游戏编写map。一切都存储在“map”类中,但map可能有数千个图block。现在我在想什么是更好的解决方案:将每个图block参数保存在x-y数组中(图blockx=10,y=11数据存储在像map[10][11]=params这样的数组中),如果我想知道关于图block的一些信息,请调用不同的数组x-y参数将瓷砖视为一个对象并制定方法,它可以轻松返回瓷砖的邻居,所有数据也作为数组存储在每个对象中的某个地方。因为我可能有数千个类似的图block,所以第一印象是它最适合oop编程,但我担心数以千计的对象图block可能会占用更多内存

php - 如何从存储在 php 变量中的日期值获取下一年的日期

我试图从一个php变量中获取下一年的日期,该变量保存从html表单发布的日期值。下面是代码$warranty_from=mysql_real_escape_string($_POST['from_date']);假设$warranty_from的值为2013-06-04。我想获得下一年的日期,即2014-06-04并存储到$warranty_to变量中。在网上搜索了很多但找不到与我的问题相关的任何资源。任何帮助表示赞赏。提前致谢。 最佳答案 以下应该有效:$warranty_from='2013-06-04';$warranty_t

php - 在 Laravel 中管理上传的文件 - 链接公共(public)目录和存储目录

在我的Laravel5.1应用程序中,我将图像存储在storage/app/uploads文件夹中。我的local磁盘:['local'=>['driver'=>'local','root'=>storage_path('app/uploads'),],//otherconfiguration...?>问题是,上传后我无法找到使用图像文件的方法,例如作为的来源标签。基本上,我需要检索图像的有效路径,以便在页面上使用它。对于部署,我正在使用提供解决方案的Envoyer。根据Envoyerdocs:Whenstoringuseruploadedfiles,youshouldstorethe

php - 如何将对象中的字符串存储为变量?

我在echo$output中得到这个对象:{"Key":"a-string-with-letters-and-numbers"}我如何将字符串(“a-string-with-letters-and-numbers”)存储为变量,或者我能否直接用选择器回显它?我需要将字符串存储到这个脚本中:options({key:""}); 最佳答案 使用json_decode$output=json_decode('{"Key":"a-string-with-letters-and-numbers"}');echo$output->Key;

php - Yii2 翻译存储在数据库中的数据

我正在使用Yii2框架,并且已经使用本指南配置了i18n组件:http://thecodeninja.net/2014/12/i18n-with-yii-2-advanced-template/因此,我现在可以使用Yii::t()函数翻译我的php文件中的字符串。使用$./yiimessage/extract控制台命令提取可翻译的字符串,生成适当的翻译文件。我现在需要显示数据库中存储的字符串的翻译。我可以像这样使用Yii:t()和变量而不是字符串作为参数echoYii:t('app',$some_string_from_db);然后用这样的代码创建一个新的php文件这样$./yiime

php - 如何指定使用哪种方法(存储和更新)laravel

所以基本上我的controller.php中有一个存储函数和更新函数,我想知道如何指定在需要时使用哪个方法。我的代码进度如下图。有人对此有解决方案吗?路由.phpRoute::resource('manage_accounts','ManageAccountsController',['only'=>['index','store','update']]);view.blade.phpid}}">Edit RegisterNewUser×UserInformationUsername:has('name'))has-error@endif">@if($errors

php - 数据库中的 Yii2 session 存储,行太多?表现?

我刚开始使用yii\web\DbSession进行session存储,我当前的表中有33,000行。我需要所有这些记录吗?我在用它们吗?我应该设置某种删除所有旧记录的实现吗? 最佳答案 看来,你有一个大项目,所以你有很多用户session。拥有充满session的大table本身不是问题。YiiDbSession组件有一个垃圾收集器方法gcSession()在每次session保存时调用,Yii会自动处理session表中的过期记录。所以是的,你需要所有这些。如果它减慢了您的应用程序,您可能需要调整您的DBMS。有一个很好的答案和有