php 判断变量中包含某个域名则替换到新url
时间: 2023-08-05 21:01:58 浏览: 51
可以使用 PHP 中的 `str_replace` 函数来完成这个任务。具体实现如下:
```php
<?php
// 待替换的字符串
$str = '这是一个包含旧域名的字符串:http://www.old.com/path/to/file.html';
// 需要替换的旧域名
$old_domain = 'www.old.com';
// 需要替换成的新域名
$new_domain = 'www.new.com';
// 判断字符串中是否包含旧域名
if (strpos($str, $old_domain) !== false) {
// 使用 str_replace 函数进行替换
$str = str_replace($old_domain, $new_domain, $str);
}
echo $str; // 输出:这是一个包含旧域名的字符串:http://www.new.com/path/to/file.html
?>
```
这段代码中,我们首先定义了待替换的字符串 `$str`,然后定义了需要替换的旧域名 `$old_domain` 和需要替换成的新域名 `$new_domain`。接着,使用 `strpos` 函数判断字符串中是否包含旧域名,如果包含则使用 `str_replace` 函数进行替换。最后输出替换后的字符串。
相关问题
tcl中怎么判断某个变量里是否含有某个关键词
在Tcl中,你可以使用字符串的`string match`命令来判断一个变量中是否包含某个关键词。`string match`命令采用模式匹配的方式来判断字符串是否符合某个模式。
下面是一个示例代码,演示如何使用`string match`命令判断变量中是否包含某个关键词:
```tcl
set keyword "apple"
set variable "I love apples"
if {[string match *$keyword* $variable]} {
puts "变量中包含关键词"
} else {
puts "变量中不包含关键词"
}
```
在上面的代码中,我们判断变量`variable`中是否包含关键词`keyword`。使用`*`通配符来表示任意字符的出现次数。如果变量中包含关键词,则输出"变量中包含关键词",否则输出"变量中不包含关键词"。
希望能帮到你!如果还有其他问题,请随时提问。
centos php环境变量部署到docker的某个容器中
要将 CentOS 上的 PHP 环境变量部署到 Docker 容器中,可以按照以下步骤进行操作:
1. 创建一个 Dockerfile 文件,其中包含以下内容:
```
FROM centos:latest
# 安装 PHP 和 Apache
RUN yum -y update && \
yum -y install httpd php php-mysql php-gd php-xml php-mbstring
# 复制 Apache 配置文件
COPY httpd.conf /etc/httpd/conf/httpd.conf
# 暴露端口
EXPOSE 80
# 启动 Apache
CMD ["/usr/sbin/httpd", "-D", "FOREGROUND"]
```
2. 创建一个 httpd.conf 文件,其中包含 PHP 环境变量的设置,例如:
```
SetEnv MYSQL_USER myuser
SetEnv MYSQL_PASSWORD mypassword
```
3. 在 Dockerfile 文件所在的目录下,执行以下命令构建 Docker 镜像:
```
docker build -t my-php-app .
```
4. 运行容器:
```
docker run -d -p 8080:80 --name my-php-container my-php-app
```
其中,-p 参数将容器的 80 端口映射到主机的 8080 端口,--name 参数指定容器的名称。
现在,PHP 环境变量已经被部署到 Docker 容器中,可以在容器中运行 PHP 应用程序,并使用设置的环境变量。