Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP替换其他文件中的单词_Php_Replace - Fatal编程技术网

PHP替换其他文件中的单词

PHP替换其他文件中的单词,php,replace,Php,Replace,我得到了一个值为的变量: 1a2b3c。 现在我想在另一个文件(“test.css”)中找到“1”,并将其替换为“a”。然后我想用“b”替换“2”,用“c”替换“3”,我怎么能这样做呢?可能吗?谢谢你的帮助。很抱歉,我以前没有说过,但我不想在同一个文件中替换它。我想用这些替换的值创建一个新文件 代码: 然后我得到了两个数组: 1: 2: PS:不是每次都有3个值。有时它看起来像:1a2b3c4d5e。。。我想动态地这样做 PPS:对不起,我的英语不好 下面是我所有的代码: index.php &

我得到了一个值为的变量: 1a2b3c。 现在我想在另一个文件(“test.css”)中找到“1”,并将其替换为“a”。然后我想用“b”替换“2”,用“c”替换“3”,我怎么能这样做呢?可能吗?谢谢你的帮助。很抱歉,我以前没有说过,但我不想在同一个文件中替换它。我想用这些替换的值创建一个新文件

代码:

然后我得到了两个数组:

1:

2:

PS:不是每次都有3个值。有时它看起来像:1a2b3c4d5e。。。我想动态地这样做

PPS:对不起,我的英语不好

下面是我所有的代码:

index.php

<?php
include 'parser.php';

print "<form method=\"get\" action=\"test.php\">";
$parser = new ConfigParser("test.theme");
$parser->parse();
print "<input type=\"submit\"></input>";
print "</form>";

?>
test.css

user
color
test

这应该适合您:

用于创建一个数组,每个数组包含2个字符,然后再次拆分该数组。因此,从您的字符串:

$str = "1a2b3c";
您将创建一个如下所示的数组:

Array
(
    [0] => 1a
    [1] => 2b
    [2] => 3c
)
然后是:

Array
(
    [0] => Array
        (
            [0] => 1
            [1] => a
        )

    [1] => Array
        (
            [0] => 2
            [1] => b
        )

    [2] => Array
        (
            [0] => 3
            [1] => c
        )

)
在此之后,您可以使用第一个字符作为键,第二个字符作为值:

Array
(
    [1] => a
    [2] => b
    [3] => c
   //^     ^ replace
   //| search
)
然后可以将此数组用作中的替换数组,其中每个键都将替换为相应的值

代码:



您尝试过什么吗?是的,我尝试过制作两个数组,但都不起作用…请展示此代码和您的问题。以下是一些可能对您有所帮助的函数,还有,或者。为什么你的代码里有咒骂和辱骂?但当我得到像colorredbackgroundblue这样的单词和数字时会怎么样?@Tom291我真的不明白你的意思。请举个小例子。@Tom291没关系,它只是替换了
a,b,c
soon@deW1但这会在2之后切断线characters@Tom291目前还不清楚文本的哪一部分是属性,哪一部分是值。。。你可以拥有类似于财产的东西:价值;属性:值请参见以下内容:
user:text:Username
color:color:Color
test:password:Password
user
color
test
$str = "1a2b3c";
Array
(
    [0] => 1a
    [1] => 2b
    [2] => 3c
)
Array
(
    [0] => Array
        (
            [0] => 1
            [1] => a
        )

    [1] => Array
        (
            [0] => 2
            [1] => b
        )

    [2] => Array
        (
            [0] => 3
            [1] => c
        )

)
Array
(
    [1] => a
    [2] => b
    [3] => c
   //^     ^ replace
   //| search
)
<?php

    $str = "1a2b3c";
    $replacement = array_map("str_split", str_split($str, 2));
    $replacement = array_column($replacement, 1, 0);


    file_put_contents("test.css", strtr(file_get_contents("test.css"), $replacement));

?>