Advertisement
Guest User

Parsowanie znacznika code

a guest
Jan 1st, 2013
125
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 1.16 KB | None | 0 0
  1. <?php
  2. function parse_code($data)
  3. {
  4. $data = stripslashes($data);
  5.  
  6. preg_match_all('@\[code.*?\](.*?)\[/code.*?\]@ms', $data, $match);
  7.  
  8. for ($i = 0, $i_cnt = count($match[1]); $i < $i_cnt; $i++)
  9.     {
  10.     $parsed_code = '<p class="code">' . str_replace(array('<', '>'), array('&lt;', '&gt;'), trim($match[1][$i])) . '</p>';
  11.     $data = str_replace($match[0][$i], $parsed_code, $data);
  12.     }
  13.  
  14. return $data;
  15. }
  16.  
  17.  
  18. if ($_SERVER['REQUEST_METHOD'] == 'POST')
  19.     {
  20.     echo '<h1>Przetworzony [code]</h1>' . nl2br(parse_code($_POST['text'])) . '<br /><hr />';
  21.     $text = stripslashes($_POST['text']);
  22.     }
  23. else
  24.     {
  25.     $text = "
  26. przykładowy tekst
  27.  
  28. [code]tekst
  29. asasdasd
  30. <b>sdfsfsdf</b>
  31. <u><i><a href='http://onet.pl'>onet</a></i></u>
  32. [/code]
  33.  
  34. inny tekst i drugi znacznik code
  35.  
  36. [code]nowy tekst
  37. <b>nie bedzie pogrubiony</b>
  38. [/code]
  39.  
  40. Kolejny tekst";
  41.     }
  42.  
  43. ?>
  44.  
  45. Test znacznika: [code]tekst[/code]
  46.  
  47. <form action="" method="POST">
  48. <textarea name="text" cols="70" rows="20"><?php echo $text; ?></textarea><br />
  49. <br />
  50. <input type="submit" value="Test" />
  51. </form>
  52.  
  53. <style>
  54. .code
  55. {
  56. font-family:courier;
  57. font-size:11px;
  58. padding:5px;
  59. background-color:#f0f0f0;
  60. }
  61. </style>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement