PHP: Unterseiten-Name anpassen (SEO)
bearbeitet von Tagwächter> > ~~~apache
> > RewriteCond %{REQUEST_FILENAME} !-f
> > RewriteCond %{REQUEST_FILENAME} !-d
> >
> > # http[s]://server/ort/seite/ , http[s]://server/ort/seite
> > RewriteRule ^(.*)/(.*)/{0,1}$ index.php?ort=$1&page=$2 [L,QSA]
> >
> > # http[s]://server/seite/ , http[s]://server/seite
> > RewriteRule ^/(.*)/{0,1}$ index.php?page=$1 [L,QSA]
> > ~~~
>
> Das wollte Christoph mMn aber gerade umgekehrt.
Nö. Genau so... der Request http://server/ort/seite/ soll nach Ankunft auf dem Server zu http://server/index.php?ort=Hamburg&page=Kanzlei umgebaut werden.
> Viel wichtiger ist dann aber, dass er die vom System zu sendenden (Response) Links auch in die neue Form bringt.
Naja. Fingerübung.
~~~php
<?php
ob_start(); # Ausgaben speichern
header( 'Content-Type: text/plain; charset=utf-8' ); # Nur für den Test!
#... Testseite "bauen";
########
echo <<<EOT
<ul>
<li><a href="https://server/index.php?page=impressum">Impressum</a></li>
<li><a href="http://server/index.php?page=impressum">Impressum 2</a></li>
<li><a href="/index.php?page=impressum">Impressum</a></li>
<li><a href="https://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg</a></li>
<li><a href="http://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 2</a></li>
<li><a href="/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 3</a></li>
<li><a href="https://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 4</a></li>
<li><a href="http://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 5</a></li>
<li><a href="/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 6</a></li>
</ul>
EOT;
########
$out = ob_get_contents(); # Seite aus Speicher holen
ob_clean(); # Speicher löschen, sonst wird der nochmals ausgegeben!
#Ein paar müde Ersetzungen:
$s[] = 'https://server';
$s[] = 'http://server';
$out = str_replace($s, '', $out);
$s = array();
$s[] = '/index.php\?ort=(.*)\&page=(.*)(["\'])';
$r[] = '/\1/\2/\3';
$s[] = '/index.php\?page=(.*)\&ort=(.*)(["\'])';
$r[] = '/\2/\1/\3';
$s[] = '/index.php\?page=(.*)(["\'])';
$r[]='/\1/\2';
for ( $i=0 ; $i < count($s) ; $i++ ) {
$s[$i] = '#' . str_replace('#', '\#', $s[$i]) . '#';
$out = preg_replace( $s[$i] , $r[$i] , $out);
}
echo $out;
~~~
Ausgabe:
~~~html
<ul>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/impressum/">Impressum 2</a></li>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 2</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 3</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 4</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 5</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 6</a></li>
</ul>
~~~
PHP: Unterseiten-Name anpassen (SEO)
bearbeitet von Tagwächter> > ~~~apache
> > RewriteCond %{REQUEST_FILENAME} !-f
> > RewriteCond %{REQUEST_FILENAME} !-d
> >
> > # http[s]://server/ort/seite/ , http[s]://server/ort/seite
> > RewriteRule ^(.*)/(.*)/{0,1}$ index.php?ort=$1&page=$2 [L,QSA]
> >
> > # http[s]://server/seite/ , http[s]://server/seite
> > RewriteRule ^/(.*)/{0,1}$ index.php?page=$1 [L,QSA]
> > ~~~
>
> Das wollte Christoph mMn aber gerade umgekehrt.
Nö. Genau so... http://server/ort/seite/ soll nach Ankunft uf dem Server zu http://server/index.php?ort=Hamburg&page=Kanzlei umgebaut werden.
> Viel wichtiger ist dann aber, dass er die vom System zu sendenden (Response) Links auch in die neue Form bringt.
Naja. Fingerübung.
~~~php
<?php
ob_start(); # Ausgaben speichern
header( 'Content-Type: text/plain; charset=utf-8' ); # Nur für den Test!
#... Testseite "bauen";
########
echo <<<EOT
<ul>
<li><a href="https://server/index.php?page=impressum">Impressum</a></li>
<li><a href="http://server/index.php?page=impressum">Impressum 2</a></li>
<li><a href="/index.php?page=impressum">Impressum</a></li>
<li><a href="https://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg</a></li>
<li><a href="http://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 2</a></li>
<li><a href="/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 3</a></li>
<li><a href="https://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 4</a></li>
<li><a href="http://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 5</a></li>
<li><a href="/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 6</a></li>
</ul>
EOT;
########
$out = ob_get_contents(); # Seite aus Speicher holen
ob_clean(); # Speicher löschen, sonst wird der nochmals ausgegeben!
#Ein paar müde Ersetzungen:
$s[] = 'https://server';
$s[] = 'http://server';
$out = str_replace($s, '', $out);
$s = array();
$s[] = '/index.php\?ort=(.*)\&page=(.*)(["\'])';
$r[] = '/\1/\2/\3';
$s[] = '/index.php\?page=(.*)\&ort=(.*)(["\'])';
$r[] = '/\2/\1/\3';
$s[] = '/index.php\?page=(.*)(["\'])';
$r[]='/\1/\2';
for ( $i=0 ; $i < count($s) ; $i++ ) {
$s[$i] = '#' . str_replace('#', '\#', $s[$i]) . '#';
$out = preg_replace( $s[$i] , $r[$i] , $out);
}
echo $out;
~~~
Ausgabe:
~~~html
<ul>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/impressum/">Impressum 2</a></li>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 2</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 3</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 4</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 5</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 6</a></li>
</ul>
~~~
PHP: Unterseiten-Name anpassen (SEO)
bearbeitet von Tagwächter> > ~~~apache
> > RewriteCond %{REQUEST_FILENAME} !-f
> > RewriteCond %{REQUEST_FILENAME} !-d
> >
> > # http[s]://server/ort/seite/ , http[s]://server/ort/seite
> > RewriteRule ^(.*)/(.*)/{0,1}$ index.php?ort=$1&page=$2 [L,QSA]
> >
> > # http[s]://server/seite/ , http[s]://server/seite
> > RewriteRule ^/(.*)/{0,1}$ index.php?page=$1 [L,QSA]
> > ~~~
>
> Das wollte Christoph mMn aber gerade umgekehrt.
Nö. Genau so... http://server/ort/seite/ soll zu http://server/index.php?ort=Hamburg&page=Kanzlei werden.
> Viel wichtiger ist dann aber, dass er die vom System zu sendenden (Response) Links auch in die neue Form bringt.
Naja. Fingerübung.
~~~php
<?php
ob_start(); # Ausgaben speichern
header( 'Content-Type: text/plain; charset=utf-8' ); # Nur für den Test!
#... Testseite "bauen";
########
echo <<<EOT
<ul>
<li><a href="https://server/index.php?page=impressum">Impressum</a></li>
<li><a href="http://server/index.php?page=impressum">Impressum 2</a></li>
<li><a href="/index.php?page=impressum">Impressum</a></li>
<li><a href="https://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg</a></li>
<li><a href="http://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 2</a></li>
<li><a href="/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 3</a></li>
<li><a href="https://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 4</a></li>
<li><a href="http://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 5</a></li>
<li><a href="/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 6</a></li>
</ul>
EOT;
########
$out = ob_get_contents(); # Seite aus Speicher holen
ob_clean(); # Speicher löschen, sonst wird der nochmals ausgegeben!
#Ein paar müde Ersetzungen:
$s[] = 'https://server';
$s[] = 'http://server';
$out = str_replace($s, '', $out);
$s = array();
$s[] = '/index.php\?ort=(.*)\&page=(.*)(["\'])';
$r[] = '/\1/\2/\3';
$s[] = '/index.php\?page=(.*)\&ort=(.*)(["\'])';
$r[] = '/\2/\1/\3';
$s[] = '/index.php\?page=(.*)(["\'])';
$r[]='/\1/\2';
for ( $i=0 ; $i < count($s) ; $i++ ) {
$s[$i] = '#' . str_replace('#', '\#', $s[$i]) . '#';
$out = preg_replace( $s[$i] , $r[$i] , $out);
}
echo $out;
~~~
Ausgabe:
~~~html
<ul>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/impressum/">Impressum 2</a></li>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 2</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 3</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 4</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 5</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 6</a></li>
</ul>
~~~
PHP: Unterseiten-Name anpassen (SEO)
bearbeitet von Tagwächter> > ~~~apache
> > RewriteCond %{REQUEST_FILENAME} !-f
> > RewriteCond %{REQUEST_FILENAME} !-d
> >
> > # http[s]://server/ort/seite/ , http[s]://server/ort/seite
> > RewriteRule ^(.*)/(.*)/{0,1}$ index.php?ort=$1&page=$2 [L,QSA]
> >
> > # http[s]://server/seite/ , http[s]://server/seite
> > RewriteRule ^/(.*)/{0,1}$ index.php?page=$1 [L,QSA]
> > ~~~
>
> Das wollte Christoph mMn aber gerade umgekehrt.
Nö. Genau so... http://server/ort/seite/ soll zu http://server/index.php?ort=Hamburg&page=Kanzlei werden.
> Viel wichtiger ist dann aber, dass er die vom System zu sendenden (Response) Links auch in die neue Form bringt.
Naja. Fingerübung.
~~~php
<?php
ob_start(); # Ausgaben speichern
header( 'Content-Type: text/plain; charset=utf-8' ); # Nur für den Test!
#... seite "bauen";
########
echo <<<EOT
<ul>
<li><a href="https://server/index.php?page=impressum">Impressum</a></li>
<li><a href="http://server/index.php?page=impressum">Impressum 2</a></li>
<li><a href="/index.php?page=impressum">Impressum</a></li>
<li><a href="https://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg</a></li>
<li><a href="http://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 2</a></li>
<li><a href="/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 3</a></li>
<li><a href="https://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 4</a></li>
<li><a href="http://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 5</a></li>
<li><a href="/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 6</a></li>
</ul>
EOT;
########
$out = ob_get_contents(); # Seite aus Speicher holen
ob_clean(); # Speicher löschen, sonst wird der nochmals ausgegeben!
#Ein paar müde Ersetzungen:
$s[] = 'https://server';
$s[] = 'http://server';
$out = str_replace($s, '', $out);
$s = array();
$s[] = '/index.php\?ort=(.*)\&page=(.*)(["\'])';
$r[] = '/\1/\2/\3';
$s[] = '/index.php\?page=(.*)\&ort=(.*)(["\'])';
$r[] = '/\2/\1/\3';
$s[] = '/index.php\?page=(.*)(["\'])';
$r[]='/\1/\2';
for ( $i=0 ; $i < count($s) ; $i++ ) {
$s[$i] = '#' . str_replace('#', '\#', $s[$i]) . '#';
$out = preg_replace( $s[$i] , $r[$i] , $out);
}
echo $out;
~~~
Ausgabe:
~~~html
<ul>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/impressum/">Impressum 2</a></li>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 2</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 3</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 4</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 5</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 6</a></li>
</ul>
~~~
PHP: Unterseiten-Name anpassen (SEO)
bearbeitet von Tagwächter> > ~~~apache
> > RewriteCond %{REQUEST_FILENAME} !-f
> > RewriteCond %{REQUEST_FILENAME} !-d
> >
> > # http[s]://server/ort/seite/ , http[s]://server/ort/seite
> > RewriteRule ^(.*)/(.*)/{0,1}$ index.php?ort=$1&page=$2 [L,QSA]
> >
> > # http[s]://server/seite/ , http[s]://server/seite
> > RewriteRule ^/(.*)/{0,1}$ index.php?page=$1 [L,QSA]
> > ~~~
>
> Das wollte Christoph mMn aber gerade umgekehrt.
Nö. Genau so... http://server/ort/seite/ soll zu http://server/index.php?ort=Hamburg&page=Kanzlei werden.
> Viel wichtiger ist dann aber, dass er die vom System zu sendenden (Response) Links auch in die neue Form bringt.
Naja. Fingerübung.
~~~php
<?php
ob_start();
header( 'Content-Type: text/plain; charset=utf-8' );
#... seite "bauen";
########
echo <<<EOT
<ul>
<li><a href="https://server/index.php?page=impressum">Impressum</a></li>
<li><a href="http://server/index.php?page=impressum">Impressum 2</a></li>
<li><a href="/index.php?page=impressum">Impressum</a></li>
<li><a href="https://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg</a></li>
<li><a href="http://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 2</a></li>
<li><a href="/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 3</a></li>
<li><a href="https://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 4</a></li>
<li><a href="http://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 5</a></li>
<li><a href="/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 6</a></li>
</ul>
EOT;
########
$out = ob_get_contents();
ob_clean();
$s[] = 'https://server';
$s[] = 'http://server';
$out = str_replace($s, '', $out);
$s = array();
$s[] = '/index.php\?ort=(.*)\&page=(.*)(["\'])';
$r[] = '/\1/\2/\3';
$s[] = '/index.php\?page=(.*)\&ort=(.*)(["\'])';
$r[] = '/\2/\1/\3';
$s[] = '/index.php\?page=(.*)(["\'])';
$r[]='/\1/\2';
for ( $i=0 ; $i < count($s) ; $i++ ) {
$s[$i] = '#' . str_replace('#', '\#', $s[$i]) . '#';
$out = preg_replace( $s[$i] , $r[$i] , $out);
}
echo $out;
~~~
Ausgabe:
~~~html
<ul>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/impressum/">Impressum 2</a></li>
<li><a href="/impressum/">Impressum</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 2</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 3</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 4</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 5</a></li>
<li><a href="/Hamburg/Kanzlei/">Wir in Hamburg 6</a></li>
</ul>
~~~
PHP: Unterseiten-Name anpassen (SEO)
bearbeitet von Tagwächter> > ~~~apache
> > RewriteCond %{REQUEST_FILENAME} !-f
> > RewriteCond %{REQUEST_FILENAME} !-d
> >
> > # http[s]://server/ort/seite/ , http[s]://server/ort/seite
> > RewriteRule ^(.*)/(.*)/{0,1}$ index.php?ort=$1&page=$2 [L,QSA]
> >
> > # http[s]://server/seite/ , http[s]://server/seite
> > RewriteRule ^/(.*)/{0,1}$ index.php?page=$1 [L,QSA]
> > ~~~
>
> Das wollte Christoph mMn aber gerade umgekehrt.
Nö. Genau so... http://server/ort/seite/ soll zu http://server/index.php?ort=Hamburg&page=Kanzlei werden.
> Viel wichtiger ist dann aber, dass er die vom System zu sendenden (Response) Links auch in die neue Form bringt.
Naja. Fingerübung.
~~~php
<?php
ob_start();
header( 'Content-Type: text/plain; charset=utf-8' );
#... seite "bauen";
########
echo <<<EOT
<ul>
<li><a href="https://server/index.php?page=impressum">Impressum</a></li>
<li><a href="http://server/index.php?page=impressum">Impressum 2</a></li>
<li><a href="/index.php?page=impressum">Impressum</a></li>
<li><a href="https://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg</a></li>
<li><a href="http://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 2</a></li>
<li><a href="/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 3</a></li>
<li><a href="https://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 4</a></li>
<li><a href="http://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 5</a></li>
<li><a href="/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 6</a></li>
</ul>
EOT;
########
$out = ob_get_contents();
ob_clean();
$s[] = 'https://server';
$s[] = 'http://server';
$out = str_replace($s, '', $out);
$s = array();
$s[] = '/index.php\?ort=(.*)\&page=(.*)["\']';
$r[] = '/\1/\2/';
$s[] = '/index.php\?page=(.*)\&ort=(.*)["\']';
$r[] = '/\2/\1/';
$s[] = '/index.php\?page=(.*)["\']';
$r[]='/\1/';
for ( $i=0 ; $i < count($s) ; $i++ ) {
$s[$i] = '#' . str_replace('#', '\#', $s[$i]) . '#';
$out = preg_replace( $s[$i] , $r[$i] , $out);
}
echo $out;
~~~
Ausgabe:
~~~html
<ul>
<li><a href="/impressum/>Impressum</a></li>
<li><a href="/impressum/>Impressum 2</a></li>
<li><a href="/impressum/>Impressum</a></li>
<li><a href="/Hamburg/Kanzlei/>Wir in Hamburg</a></li>
<li><a href="/Hamburg/Kanzlei/>Wir in Hamburg 2</a></li>
<li><a href="/Hamburg/Kanzlei/>Wir in Hamburg 3</a></li>
<li><a href="/Hamburg/Kanzlei/>Wir in Hamburg 4</a></li>
<li><a href="/Hamburg/Kanzlei/>Wir in Hamburg 5</a></li>
<li><a href="/Hamburg/Kanzlei/>Wir in Hamburg 6</a></li>
</ul>
~~~
PHP: Unterseiten-Name anpassen (SEO)
bearbeitet von Tagwächter> > ~~~apache
> > RewriteCond %{REQUEST_FILENAME} !-f
> > RewriteCond %{REQUEST_FILENAME} !-d
> >
> > # http[s]://server/ort/seite/ , http[s]://server/ort/seite
> > RewriteRule ^(.*)/(.*)/{0,1}$ index.php?ort=$1&page=$2 [L,QSA]
> >
> > # http[s]://server/seite/ , http[s]://server/seite
> > RewriteRule ^/(.*)/{0,1}$ index.php?page=$1 [L,QSA]
> > ~~~
>
> Das wollte Christoph mMn aber gerade umgekehrt.
Nö. Genau so... http://server/ort/seite/ soll zu http://server/index.php?ort=Hamburg&page=Kanzlei werden.
> Viel wichtiger ist dann aber, dass er die vom System zu sendenden (Response) Links auch in die neue Form bringt.
Naja. Fingerübung.
~~~php
<?php
ob_start();
header( 'Content-Type: text/plain; charset=utf-8' );
#... seite "bauen";
########
echo <<<EOT
<ul>
<li><a href="https://server/index.php?page=impressum">Impressum</a></li>
<li><a href="http://server/index.php?page=impressum">Impressum 2</a></li>
<li><a href="/index.php?page=impressum">Impressum</a></li>
<li><a href="https://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg</a></li>
<li><a href="http://server/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 2</a></li>
<li><a href="/index.php?ort=Hamburg&page=Kanzlei">Wir in Hamburg 3</a></li>
<li><a href="https://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 4</a></li>
<li><a href="http://server/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 5</a></li>
<li><a href="/index.php?page=Kanzlei&ort=Hamburg">Wir in Hamburg 6</a></li>
</ul>
EOT;
########
$out = ob_get_contents();
ob_clean();
$s[] = 'https://server';
$s[] = 'http://server';
$out = str_replace($s, '', $out);
$s = array();
$s[] = '/index.php\?ort=(.*)\&page=(.*)["\']';
$r[] = '/\1/\2/';
$s[] = '/index.php\?page=(.*)\&ort=(.*)["\']';
$r[] = '/\2/\1/';
$s[] = '/index.php\?page=(.*)["\']';
$r[]='/\1/';
for ( $i=0 ; $i < count($s) ; $i++ ) {
$s[$i] = '#' . str_replace('#', '\#', $s[$i]) . '#';
$out = preg_replace( $s[$i] , $r[$i] , $out);
}
echo $out;
~~~