草庐IT

不可避免

全部标签

php: 在某些情况下避免使用 __get?

我有一个类,我正在使用__set。因为我不希望它设置任何东西,所以我有一组已批准的变量,它会在实际设置类属性之前检查这些变量。但是,在构建时,我希望__construct方法设置几个类属性,其中一些不在批准列表中。因此,当构造发生时,我执行$this->var=$value,我当然会得到我不允许设置该变量的异常。我能以某种方式解决这个问题吗? 最佳答案 声明类成员:classBlah{private$imAllowedToExist;//noexceptionthrownbecause__set()wontbecalled}

PHP 函数不可用 - 可能缺少 APACHE 编译配置

我刚刚从共享托管环境切换到专用服务,在测试我的代码时,我发现某些PHP函数不可用:Fatalerror:Calltoundefinedfunctionmb_strtoupper()我可以完全访问WHM,并且可以使用一系列选项重新编译PHP。作为新手,我觉得最好将我不熟悉的选项保留为默认设置。PHPINFO()声明我正在运行5.2.9版和APACHE2.2。我是否错过了配置APACHE的选项-是否需要打开某些选项才能获得对PHP功能的完全访问权限? 最佳答案 这个问题最好在serverfault.com上提出但是,关于您的版本,您很可

php - cakephp 缓存文件夹在 iis 上不可写

Cakephp说我的缓存文件夹不可写。我看了一下,IIS确实对该文件夹具有写权限。Warning(512):C:\inetpub\wwwroot\myapp\tmp\cache\isnotwritable[CORE\cake\libs\cache\file.php,line267] 最佳答案 您授予访问权限的用户似乎不是通过PHP/IIS访问该文件夹的用户。一个简单的解决方案是授予Everyone对该文件夹的完全控制访问权限。这应该是相当安全的,因为除非通过更麻烦的错误配置,否则无法公开访问此文件夹。或者,您可以尝试辨别PHP正在模

PHP - 避免每个页面的所有包含?

我目前正在编写一个用户身份验证系统。问题是,我不想为每个要使用该类的页面都包含类x、y、z等。例如,这是索引页://///////Iwouldliketonothavetoincludeallthesefileseverytime////////include_once'../privateFiles/includes/config/config.php';include_onceCLASSES.'\GeneratePage.php';include_onceDB.'\Db.php';include_onceHELPERS.'\HelperLibraryUser.php';//call

php - 避免单个类 PHP 的多个类实例化?

我编写了一个类来处理购物车的前端(Web浏览器端)。这相当简单,因为我向类发送一个我埋在URL中的产品ID,然后查询一个数据库,填充类变量以用于通过一些公共(public)方法检索数据。为了与我的实际物理网页交互,我有一个名为viewFunctions.php的文件。其中我实例化了名为ItemViewPackage()的类:因此,我有shoppingcartpage.php(物理url),它需要加载我的类ItemViewPackage()的文件viewFunctions.php。输出页面shoppingcartpage.php调用像get_item_info('title')或get_

php - csv解析, explode 避免 ""

我有一个用php解析的csv文件(真的很大)。现在是这样炼成的。x,y,z,value,etc但有时会出现这样的情况:x,"blah,blah,blah",z,value,etc这样做:explode(',',$string);如果是""值,也会explode其中的所有内容。array([0]=>x,[1]=>"blah,[2]=>blah,[3]=>blah"....)我该怎么做才能拥有这个:array([0]=>x,[1]=>"blah,blah,blah",[2]=>z....)代替?谢谢 最佳答案 不要使用explode,使

php - 避免javascript执行的最佳方法

我在我的应用程序中使用PHP和ZendFramework。用户可以输入一些HTML,管理员可以看到这个HTML。我想避免XSS注入(inject)。除了任何javascript之外,所有HTML都应按原样显示。我试图删除script标签,但它不安全。用户可以将javascript添加到onclick或其他事件。谢谢。 最佳答案 如果您希望像这样从XSS中清理用户输入,我会考虑使用HTMLpurifier仅删除脚本标签是不够的,您会错过任何人们可以添加的javascript内联,等等。HTMLpurifier但是会为您删除所有内容。从

php - array_search 行为不可预测

我有一个简单的函数,它查看传入的mySQL数据类型,然后将其汇总到一个“类别”(在此代码中称为一个系列),以便我可以在类别级别应用默认值。不管怎样,这段代码在查找整数、字符和文本类别时工作正常,但在日期时间和小数类别上完全失败。我束手无策。任何帮助将不胜感激:publicstaticfunctionget_family_type($col_type){$families=array('integer'=>array('integer','int','tinyint','mediumint','bigint'),'fixed'=>array('decimal','numeric'),'f

php - query_posts() 应该避免吗?

我读到应该避免使用query_posts(),而使用wp_query()和pre_get_posts()。我对弄乱循环没有信心,也不完全理解法典。下面的代码是否使用了query_posts()?如果是,并且由于应避免使用query_posts(),您能否建议一种不使用query_posts()但仍能完成相同事情的方法?functions.php中的这段代码用于按随机或按价格对帖子进行排序。functionmy_custom_query($query){if($query->is_home()&&$query->is_main_query()){$sort=$_GET['sort'];i

php - 将字符串的每个字母包装在标签中,避免使用 HTML 标签

我想构建一个函数,它接受一个字符串并将其每个字母包装在中,除了空格和HTML标签(在我的例子中,标签)。所以:"Hithere."...应该成为"Hithere."我没有找到自己的解决方案,所以我环顾四周,发现很难找到我正在寻找的东西。我找到的最接近的答案是Neverever的答案here.但是,它似乎并没有很好地工作,因为的每个字符标签被包裹在中并且它与éèàï等重读字符不匹配。我该如何处理?为什么用正则表达式解析HTML标签看起来如此错误? 最佳答案 您可以使用([^\s>])(?!(?:[^]*)?>)获得结果正则表达式。要启