草庐IT

replace_if

全部标签

php - 通过 PHP 缓存图像请求 - If-Modified-Since 未发送

我通过php提供图像并且在设置它以响应304header以节省加载时间时遇到了一些问题。下面的大部分代码是我在php.net上找到的。它有效,但总是以200响应。由于某些原因,即使我最初发送了Last-Modifiedheader,也没有在任何请求中收到If-Modified-Sinceheader。这是在一个apache服务器。知道可能出了什么问题吗?Examplehere.此页面将从磁盘加载图像并将其显示到浏览器,同时发送Last-Modifiedheader。如果您刷新页面,浏览器不会像它应该的那样发送If-Modified-Sinceheader。define('SITEPAT

php - 这些嵌套的 if/elseif 语句的更优雅的解决方案是什么?

我正在构建一个包含用户和用户配置文件的网站。配置文件中的许多字段都是可选的。有很多用户生成内容的机会,因此我需要在网站的许多不同位置(评论、帖子等)显示此内容的作者。在用户的个人资料中,他能够(可选地)填写他的“名字”、“姓氏”和“显示名称”。为了显示作者,我编写了一个辅助方法来查看提供的这些字段的数组,并按照以下优先顺序返回最适合用户的名称:如果用户填写了display_name,就会显示出来。如果用户填写了first_name和last_name,但没有填写display_name,它将显示这两个名字如果用户只填写了first_name,它会显示first_name。如果用户只填写

php - 无法计算出 php str_replace() 来删除逗号

关闭。这个问题是notreproducibleorwascausedbytypos.它目前不接受答案。这个问题是由于错别字或无法再重现的问题引起的。虽然类似的问题可能是on-topic在这里,这个问题的解决方式不太可能帮助future的读者。关闭6个月前。Improvethisquestion在一个PHP项目中,我有:$string="1,555";str_replace(',','',$string);echo$string;//isstill1,555str_replace不会删除逗号。如果我var_dump。我得到string(5)"1,555"有什么想法吗?我只需要删除逗号以便

php - is_null 函数在我的 if 语句中无法正常工作

我有一个if语句来检测用户是否登录并属于某个部门。这真的很简单。有一个Permissions.php类,如果登录或返回NULL,则返回User对象。protected$user=NULL;...publicstaticfunctioninstance(){if(!self::$instance){self::$instance=newPermissions();}returnself::$instance;}...publicfunctionget_user(){return$this->user;}然后是user.php类,它具有返回他们所在部门的函数:publicfunctioni

php - 如何在 PHP 中使用 preg_replace 匹配俄语单词?

如何在PHP中匹配字符串(也是俄语)中的俄语单词?例如这样的事情:$pattern='/слово/';preg_replace($pattern,$replacement,$string_in_russian)我试过了utf8_encode和htmlentities为$pattern使用UTF-8标志,但它没有用。我还应该对$string_in_russian进行编码吗?更新:/u标志的建议没有用,所以我放置了我需要它的实际代码。它来自Wordpress的词汇表插件(我的网站已正确设置为使用俄语,它确实有效,但在本例中无效)。所以这是代码$glossary_title=$glossa

php - 正则表达式 - 获取元素以呈现 if 语句

我正在设计脚本并尝试在php中不使用eval构建if结构。仍然不完整,但正在突破,它是为了做一个模板引擎,引擎的“if”部分。不允许赋值运算符,但我需要测试值不允许php代码注入(inject),准确地说不使用eval它需要在变量之间进行单独的操作以防止注入(inject)攻击。正则表达式必须捕获[if:(a+b-c/d*e)|(x-y)&!(z%3=0)]output[elseif:('b'+'atman'='batman')]output2[elseif:('b'+'atman'='batman')]output3[elseif:('b'+'atman'='batman')]out

php - 在 PHP 中使用 str_replace() 将\n 替换为 ''

我有以下代码$s='\ntest@gmail.com\n';$s=str_replace('\n','',$s);echo$s;我想替换'\n'字符''但它不适用于上面的代码。我发现它是\n是echoord(substr($s,0,1));的ascii值为10的新行字符它不工作。我不清楚不使用上述代码的确切原因是什么。请帮忙。 最佳答案 您需要将\n放在双引号中。在单引号内,它被视为2个字符'\'后跟'n'试试下面的代码:$s="\ntest@gmail.com\n";$s=str_replace("\n",'',$s);echo$

PHP if 语句如果页面是用 ajax 加载的

我有一个加载了从包含文件(pullList.php)填充的div的页面,但是如果您单击一个按钮(假设是“重新加载”按钮),div的内容将重新加载相同的内容文件(pullList.php)。现在的问题是,当通过ajax(使用jquery)加载页面时,我需要在pullList.php文件中包含一个包含文件(function.php),该文件已经包含在页面中。所以,理想情况下,我希望能够写出这样的声明if(thepagewasloadedwithajax){include(function.php);}这样function.php文件只会加载一次,如果通过ajax再次请求该页面,它具有正确显

php - 长 if 语句和 PSR-2

我正准备将一些代码迁移到PSR-2标准。在我的代码中,我有包含多行表达式的if语句:if($field->getBlockMode()==FieldInterface::BLOCK_MODE_HIDEVAR&&!isset($this->enabledBlocks[$field->getBlock()])){}编写此类表达式的最佳做法是什么? 最佳答案 如何让它成为一个单行代码来避免这个问题并使语句更具可读性:$blockModeIsHidevar=$field->getBlockMode()==FieldInterface::BL

php - 使用 preg_replace() 和正则表达式将大写字符串替换为小写字符串

是否可以使用preg_replace和regex将大写字母替换为小写字母?例如:以下字符串:$x="HELLOLADIES!";我想把它转换成:helloladies!使用preg_replace():echopreg_replace("/([A-Z]+)/","$1",$x); 最佳答案 我想这就是你想要完成的:$x="HELLOLADIES!Thisisatest";echopreg_replace_callback('/\b([A-Z]+)\b/',function($word){returnstrtolower($word[