问题标签 [str-replace]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 带有变量的PHP模板类?
我想让我的新项目的开发更容易,我想要一个非常简单的模板引擎解决方案。我在网上环顾四周,一切要么太臃肿,要么让我畏缩。
我的 HTML 文件将如下所示:
显然,我想用我用 PHP 设置的东西来替换{PAGE_TITLE}
和。{PAGE_HEADER}
像这样:
我会使用类似的东西str_replace
并将替换的 HTML 加载到字符串中,然后将其打印到页面上?这就是我目前正在做的事情......有没有人有任何建议或方法可以让我做得更好?
谢谢。
php - str_replace 和 preg_replace 在一台服务器上工作,但不在另一台服务器上工作
更新:事实证明,以下是由我的生产服务器上的缓存问题引起的。感谢所有提供周到答案的人。
我在一个 php 页面上有一个简单的函数,它需要一个 url,例如:
http://myurl.com/mypage.html?param1=value1
并将其转换为:
http://myurl.com/searchpage.html?param1=value1
它所做的一切就是换掉 page.html 部分。
为此,我使用以下内容:
上面的代码不是确切的代码,而是一个很好的表示。它在一台服务器上运行良好,但是当我推送到生产环境时,preg_replace 不起作用。我最初尝试使用 str_replace。它也适用于我的本地开发机器,但不适用于生产服务器。
我已确认 URL 变量输入正确。有任何想法吗?
php - PHP文本格式化:连续检测多个符号
我有一种奇怪的东西,我真的很喜欢我的文本格式。请不要问我为什么会做这种奇怪的事情!;-)
因此,我的 PHP 脚本将所有行折叠“\n”替换为特殊符号之一,如“|”。当我将文本数据插入数据库时,PHP 脚本将所有折行替换为符号“|” 当脚本从数据库中读取文本数据时,它会替换所有特殊符号“|” 折线“\n”。
我想限制文本格式,如果每个分隔文本中使用的折线超过 2 条,它将切断折线。
这是我希望脚本格式化的文本示例:
我想限制格式,如:
因此,在第一个示例中,两个文本之间只有一个行折叠,而在第二个示例中,两个文本之间有 3 个行折叠。
如何可以替换超过 2 行折叠符号“|” 如果在文本中检测到它们?
这是我希望脚本执行的一种示例:
嗯,我有问题!当文本数据以 POST 方法发送时,这不起作用。看这个:
这是我在 textarea 上输入的文本,在 str_replace 之后显示:
这是我的 PHP 和 HTML 代码:
php - 我有一个带有“\u00a0”的字符串,我需要用“”替换它 str_replace 失败
我需要清理来自各种 Microsoft Office 套件应用程序(Excel、Access和Word)的字符串(复制/粘贴),每个应用程序都有自己的一组编码。
我将 json_encode 用于调试目的,以便能够看到每个编码的字符。
我可以用 str_replace 清理我目前找到的所有东西 (\r \n),但是用 \u00a0 我没有运气。
返回:
那是完全一样的;它完全忽略了\u00a0。
有没有解决的办法?另外,我觉得我正在重新发明轮子,是否有一个函数/类可以完全去除每一个可能的编码的每一个可能的字符?
____编辑____
在前两个回复之后,我需要澄清我的示例确实有效,因为它是 json_encode 的输出,而不是实际的字符串!
php - 用 php & mysql 替换文本中的关键字
我有一个新闻网站,其中包含超过 100 万条新闻的档案。我创建了一个包含约 3000 个条目的词定义数据库,由词定义对组成。
我想做的是在新闻中每次出现这些词的旁边添加一个定义。我无法进行静态更改,因为我可以每天添加一个新关键字,因此我可以使其成为实时或缓存。
问题是,astr_replace
或 apreg_replace
在文本中搜索 3000 个关键字并替换它们会非常慢。
有没有快速的替代品?
php - 两个数字字符串之间的 str_replace
另一个问题str_replace
,我想将以下$title
数据更改为 URL,方法是$string
在开头和破折号 (-) 之后取中间数字
- 芝加哥
'
公立学校- 1030 万美元 - 新泽西州- 300 万美元
- 密歇根州:公共卫生- 100 万美元
愿望输出是:
芝加哥-公立-学校
-新泽西
-密歇根-公共卫生
我正在使用的 PHP 代码
不幸的是我得到的结果:
有人对此有更好的解决方案吗?多谢你们!
(更改为'
amp9 - 想知道为什么?)
php - php str_replace 模式
我有一个 php 应用程序,它将图片保存在服务器上,并将图片名称存储在数据库中。我遇到的问题是图片名称包括保存它的路径/文件夹(例如 1220368812/chpk2198933_large-2.jpg)所以我需要一个 str_replace 模式来删除“1220368812/”并将图片名称正确存储在分贝。此外,如果您能向我发送一个很好的链接,说明 str_replace 模式的工作原理或至少您使用的模式如何工作,我将不胜感激。
php - str_replace() 和 strpos() 用于数组?
我正在处理一组数据,我已经更改了一些数组键的名称,但我希望数据基本上保持不变......基本上我希望能够将数组中的数据存储在数据库,但我想更新与之关联的数组键名。
以前的数组看起来像这样:$var_opts['services'] = array('foo-1', 'foo-2', 'foo-3', 'foo-4');
现在数组键不再以“foo”为前缀,而是以“bar”为前缀。那么如何更新数组变量以摆脱“foos”并替换为“bars”呢?
像这样:$var_opts['services'] = array('bar-1', 'bar-2', 'bar-3', 'bar-4');
我已经if(isset($var_opts['services']['foo-1'])) { unset($var_opts['services']['foo-1']); }
用来摆脱 foos... 我只需要弄清楚如何用 bar 替换每个 foo。
我以为我会在整个数组上使用 str_replace,但令我沮丧的是,它只适用于字符串(去图,呵呵)而不是数组。
php - How to skip first regex match?
Is there anyway to skip the first match when using regex and php.
Or is there some way of achieveing this using str_replace.
Thanks
UPDATE I am trying to remove all the instances of a string from another string but I want to retain the first occurance e.g
Ouput string would be:
This is a test string to test to removing the word test
php - 转义转义字符
我正在尝试模仿json_encode
PHP 5.3.0 中实现的位掩码标志,这是我拥有的字符串:
执行json_encode($s, JSON_HEX_APOS | JSON_HEX_QUOT)
输出以下内容:
我目前正在使用 5.3.0 之前的 PHP 版本:
正确输出相同的结果:
我无法理解为什么我需要将单引号('\\\''
甚至"\\'"
[排除周围引号])替换'\\\u0027'
为'\\u0027'
.
这是我在移植到 PHP < 5.3 时遇到问题的代码: