草庐IT

应不应该

全部标签

php - 我应该使用正则表达式,还是只使用一系列 if 语句?

我需要根据这些规则验证字符串:值不是s值的长度至少为1个字符值仅包含a-z0-9-_/值不以/开头值不以/结尾值不包含/s/值不包含//值不以s/开头值不以/s结尾(更简单地说,我正在寻找类似于UNIX风格的路径,带有斜杠分隔符,其中文件/文件夹名称只允许a-z0-9-_,没有文件/文件夹名为s,它没有开头或结尾的斜杠。)我需要在客户端通过JavaScript执行此操作,在服务器端使用PHP执行此操作。我知道最优雅的解决方案是通过复杂的正则表达式。但是尝试写一个值得挑战吗?还是我应该只使用条件?现在,我的解决方案是:http://jsfiddle.net/cKfnW/JavaScrip

php - 我应该将表单和处理器写在同一个文件中还是将它们分开?

就PHP的最佳实践而言,将处理脚本和表单编写在同一个文件中还是将它们分开在不同的文件中更好?对于较大的项目,每个项目之间的比例如何?例如,我应该写成:登录.php或者我应该写成:处理器.php登录.html一段时间以来,我一直在努力决定是让它更抽象还是更简洁……有没有一种方法是大多数网络开发人员都遵循的? 最佳答案 我认为将它们分开通常被认为是更好的做法。这样做会给您带来额外的好处,即允许您将备用输入路由引导到同一处理器(使其更易于重用)。 关于php-我应该将表单和处理器写在同一个文件

php - 哪个类应该取决于哪个类基于重要性级别

我有一个关于OOD、OOP和建模的一般性问题,但我不确定如何提出。最简单的方法是举例。我通常使用PHP,但它可以使用任何其他语言。假设我是一家银行,我想制作一个处理提款的程序。所以我将制作2级提款和帐户。现在最好有提款功能。我的意思是:$account=getAccountById(1);//account->balance=200.00$withdrawal=newWithdrawal(50,'USD');$withdrawal->setAccount($account);//$withdrawal->account_id=1$withdrawal->make();//SQLchan

php - 为什么应该在相关链接(Codeigniter 等)中使用 base_url()

为什么在CodeIgniter中我应该总是在相对链接中使用语法base_url+link?例如:link22.php">代替当我声明">在HTML头部?有什么好处? 最佳答案 好问题。短词(在下面使用)CI-代码点火器为什么要使用base_url()??base_url()是一个确定您的项目目标的函数,它充当$_SERVER['REQUEST_URI']在php中这将知道您的实际项目包含在哪里。我们可以在哪里修改/定义base_url()??Path-application/config/Filename-config.php我们可

php - 我应该在服务器上使用什么 WooCommerce API?

我正在编写一个脚本来批量更改产品属性,例如价格、重量和尺寸。我需要直接在安装了WordPress(4.7.2)和WooCommerce(2.6.13)的服务器上运行脚本。我能想到的选项对我来说似乎并不理想:WooCommerce非RESTAPI将是我显而易见的选择,但它被降级为可怕的legacyfolder这有点过时了。WooCommerceRESTAPI(link)似乎有些矫枉过正:当我已经在服务器上并且只能使用PHP时,为什么还要通过身份验证并使用HTTP?考虑到WooCommerce产品属性之间的许多关系,通过update_post_meta()操作数据库似乎容易出错且难以维护;

php - PHP 线程应该如何存储它的数据?

所以我一直在网上搜索和阅读有关PHPpthreads3以及它们应该如何存储数据的信息。(或者更确切地说,他们不是)在我看来,线程正确存储其数据的唯一方法是创建一个新的Threaded对象并将其发送给线程。然后线程可以使用这个Threaded对象来存储几乎所有数据。我的问题,也是掌握PHP线程的最大问题:是否可以让线程在需要时创建自己的存储对象?我不知道如何或为什么,因为我在这个问题上找到的所有答案都含糊不清、详尽且令人困惑“也许,但不是”,主要与性能不佳和内存问题/安全性有关。这似乎应该是可能的,不知何故:classsomeFantasticThreadextendsThread{pu

php - 如何应对本土化?有没有我应该遵循的标准?

我正在尝试制作一组​​类来处理本地化(主要是货币部分,还有语言)。我可以想象逻辑是怎样的,但我不知道为不同的语言和货币使用什么名称。我看到有很多关于此的ISO标准,我应该选择哪一个?无论如何,这是我正在考虑的逻辑,以防您也能提供帮助:我会有一个Money类,具有金额和货币属性。创建时,该对象会收到金额和货币(可能是本地化类提供的对象?)。您可以添加或乘以该金额。add方法将另一个货币对象作为参数,如果它有不同的货币,则会自动进行转换。在某个地方存储了一个数组,其中包含所有标准名称,例如en_US和USD,将它们适本地关联起来,并将它们与作为标量值的美元等价物关联起来。Money对象应该

php - 我是否应该将我的 PHP5 对象存储在 SPEED session 中,为什么?

如您所知,当您在SESSION中存储一个类定义时,会自动序列化,并在每个后续页面上反序列化。我刚开始写类(class),我想知道:在session或文件中存储类并序列化是个好主意吗?如果是,我如何存储然后获取以在PHP5中使用类? 最佳答案 您不能将类存储在session变量中,但可以存储对象。请注意,如果您的对象具有引用文件句柄和数据库连接等资源的属性,则再多的反序列化操作也无法恢复它们。 关于php-我是否应该将我的PHP5对象存储在SPEEDsession中,为什么?,我们在Sta

php - 我应该在发送之前在数据库中对电子邮件进行排队,而不是即时发送吗?

我正在开发一个网站,在某些事件/用户操作(在照片中标记、添加为friend等)后向用户发送电子邮件通知根据我的经验,从网络服务器发送电子邮件可能很慢。例如,在创建新用户时,我会发送一封电子邮件来确认/欢迎该帐户。但是,在完成发送电子邮件时,有时会出现短暂的暂停等待页面加载。我担心的是,如果我在连接到邮件服务器时遇到问题或邮件服务器过载,它会成为我的应用程序/页面加载的瓶颈所以我的问题是,从一致发送电子邮件的Web应用程序发送电子邮件的最佳方式是什么?我是否应该创建一个队列系统,将电子邮件内容存储在数据库中,然后运行计划的cron作业来处理所有未送达的电子邮件?或者我是否应该在用户完成操

php - 我应该使用 LightOpenID 将 REALM 设置为什么,以便 Google url 保持一致,以便存储在我的数据库中?

最近,我注意到当将生成的身份存储在我的数据库中时,Google有时会为同一用户返回不同的身份,从而导致单个用户有两个数据库条目。经过一些研究,我发现Google使用$openid->realm和用户名来创建身份。默认情况下,Realm成为您网站的URL。使用LightOpenID,我应该如何设置$openid->realm以使生成的Google身份保持一致,以便我可以将它们存储在我的数据库中?我可以将“Realm”设置为我喜欢的任何东西吗?还是必须与我的URL相关? 最佳答案 我看了规范:http://openid.net/spec