tutorial BBcode sencillo en PHP

mkarra

Hola!
He publicado un articulo que explica una pequeña función para crear un BBcode sencillo, para los que estéis empezando en PHP o los que no llevéis mucho tiempo os puede venir muy bien para aprender algo mas.
Este manual lo he publicado en mi blog, podéis echarlo un ojo en http://www.zepsilon.com/mkarra/n/8

De paso me gustaría saber que tipo de ayuda sobre PHP os gustaría que publicase en mi blog para siguientes artículos.

Saludos.

SiCk

Yo no entiendo muy bien como se hace el cambio de link (se llama permalink creo)
Se que es algo de la función header y con REQUEST_URI, pero no se como se hace, solo consigo index.php/seccion/noticia por ejemplo, te estaría agradecido :p

mkarra

Yo eso lo consigo con RewriteEngine que es un modulo de apache me parece(pero viene con apache).

erdanblo

Ta way.

Y yo que antes lo hacia con el str_replace, ainssss que lios.

#2 Reescribir direcciones con mod_rewrite de Apache

http://www.aeoris.net/escritos/apache/reescribir-direcciones-con-mod_rewrite.html

guner

Hombre, el tutorial no está mal. Lo que has explicado no es muy difícil, quizás te deberías haber centrado en explicar las expresiones regulares y el funcionamiento de preg_replace.

Ah, por cierto

preg_replace($a, $a, $texto); -> preg_replace($a, $b, $texto);

mkarra

thanks guner, mirare ese pequeño error, "Lo que has explicado no es muy difícil" ya bueno es BBcode sencillo, y meterme a explicar las expresiones regulares kizas me alargara demasiado, pero una buena idea para otro articulo ;), ya mirare.

mkarra

-- se envio dos veces este borrarlo si eso --

EnZo

No me gusta ser borde pero el tutorial tiene unos cuantos fallos. No se nisiquiera si lo has probado, pero creo que no porque si lo hubieses probado te daria error y no habrias puesto esos ejemplos.

<?
preg_replace("/b[/b]/is", "< b>$1< /b>", $texto);
?>

  • los caracteres [] se usan para rangos por lo tanto es un caracter especial y le has de poner la contrabarra quedando asi: [b]

  • Para que pones la interrogacion si ya has puesto el asterisco, son 2 cuantificadores o pones uno u otro y en este caso debes poner solo el asterisco quedando asi: (.*)

  • El caracter / sirve para identificar el final de la expresion asi que es un caracter especial y necesita la contrabarra, quedando asi: [\/b]

    El ejemplo que has echo sin errores quedaria asi:
    <?
    preg_replace("/[b](.*)[\/b]/is", "< b>$1< /b>", $texto);
    ?>

    Y como dice guner, has explicado lo que no necesita explicacion. Ya que haces un tutorial de bbcode explica las expresiones regulares porque para explicar como se usa una funcion propia no merece la pena.

guner

El objetivo de un tutorial es que el que lo lee, después pueda, al menos tener una idea de por dónde empezar para hacer lo mismo.

Si yo no supiera hacerlo, leyera tu tuto y luego intentara hacerlo, me acordaría de que había una función, parecida a str_replace, pero ni puta idea de como funciona, y, aunque fuera a php.net lo de las regex no lo entendería.

Yo habría escrito algo así.

preg_replace es una función similar a str_replace, pero más avanzada, porque usa expresiones regulares.
Sintaxis: preg_replace($re, $reemplazo, $origen)

$re: es la expresión regular. Una expresión regular es una cadena que contiene patrones que podemos comparar con otra cadena para ver sus coincidencias.
$reemplazo: es la cadena con la que reemplazaremos las conicidencias.
$origen: donde queremos buscar las coincidencias.

Antes no me refería a explicar las expresiones regulares (!_!), sólo a algo como lo que he puesto, explicar su utilidad.

No haría falta ni explicar lo de Enzo, ahora, con un enlace interno a otro tuto sí que quedarías bien.

mkarra

al imprimir el PHP en la página las barras \ han desaparecido tengo que mirarme bien la función de colorear. xq puse la funcion stripslashes() xq me daba error pero tambien me quita las que no tiene que quitarme a si que luego lo miro.

Usuarios habituales

  • mkarra
  • guner
  • EnZo
  • erdanblo
  • SiCk