在PHP中添加或替换文本

时间:2012-05-13 06:47:03

标签: php

我是PHP的新手。我的js文件看起来像

   var sites = [
 //Texte anime
  {url:" http://carouselinfo.com/canal/", duration:9},
 //Texte anime
  {url:" http://carouselinfo.com/canal-2/", duration:9}, 
  //Intro detallee
 {url:"http://carouselinfo.com/index-t1.html", duration:35},
 //CTA
 {url:"http://carouselinfo.com/index-t2.html", duration:35},

 //Football
  {url:"http://carouselinfo.com/twitter-ligue/", duration:100},


 //Texte anime
  {url:" http://carouselinfo.com/canal-2/", duration:9}, 

  //TrailersClub.com
  {url:"http://trailersclub.com/?lang=fr", duration:480},

 //Heure
 {url:"http://carouselinfo.com/heure", duration:8},
 //Meteo
 {url:"http://carouselinfo.com/meteo", duration:12},
 //Texte anime
  {url:" http://carouselinfo.com/canal-cine/", duration:9},
 //Cine
 {url:"http://carouselinfo.com/cine/index-t1.html", duration:150},
  //Texte anime
  {url:" http://carouselinfo.com/canal-2/", duration:9}, 
 //Heure
 {url:"http://carouselinfo.com/heure", duration:8},
   ];

我想在var site = [或任何一行说明4行使用php后添加文本,所以我们如何添加。这是我在任何行上替换Text的代码。

$lines = array();
foreach( file('source.js') as $line ) {
  if ( 'var site=[' === $line ) {
    array_push($lines, 'test');
  }
  array_push($lines, $line);
}

file_put_contents('source.js', $lines);

此代码无效。

1 个答案:

答案 0 :(得分:0)

如果您正在尝试这样做,这将附加到您的文件中。

<?
$file = "/path/to/file.js";
$lines = file($file);
$lines[] = "test\n";
file_put_contents($file, $lines);
?>

如果您想替换该位置的文字,您可以

foreach($lines as $i => $line)
{
   if($line == "text to replace")
      $lines[$i] = "replacement";
}

如果要在第4行放置新链接,请将数组向右移动并在数组位置3($lines[3])处写入。或者您可以使用我的功能:

function array_insert($array, $index, $value) //assumes all keys are ints
{
   for($i=sizeof($array); $i < $index ; $i--)
      $array[$i+1] = $array[$i];
   $array[$index]  = $value;
}

如果要在索引4处插入“test”,请使用此类函数:array_insert($array, 4, "Test")

我没有测试过,但应该可以使用。