已掉线,重新登录

首页 > 绿虎论坛 > 历史版块 > 编程 > PHP > 讨论/求助

标题: markdown使用求万能的虎友解释下

作者: @Ta

时间: 2020-08-17发布,2020-08-17修改

点击: 5760

<?php
$arr="请输入内容<br>&lt;!md&gt;<br>
我展示的是一级标题  <br>
=============<br>
我展示的是二级标题  <br>
----------------------<br>
# 一级标题  <br>
## 二级标题  <br>
### 三级标题  <br>
#### 四级标题  <br>
##### 五级标题  <br>
###### 六级标题  <br>
*斜体文本*<br>
_斜体文本_<br>
**粗体文本**<br>
__粗体文本__<br>
***粗斜体文本***<br>
___粗斜体文本___<br><br>
***<br><br>
* * *<br><br>
*****<br><br>
- - -<br><br>
----------<br>
# 这是 H<br>
## 这是 H2<br>我经常去的几个网站[Google][1]、[Java-er.com][2]。<br>
[1]:http://www.google.com <br>
[2]:https://www.java-er.com<br>&lt;!md&gt;";





$arrrr="<!md>
我展示的是一级标题  
=============
我展示的是二级标题  
----------------------
# 一级标题  
## 二级标题  
### 三级标题  
#### 四级标题  
##### 五级标题  
###### 六级标题  
*斜体文本*
_斜体文本_
**粗体文本**
__粗体文本__
***粗斜体文本***
___粗斜体文本___

***

* * *

*****

- - -

----------
# 这是 H1
## 这是 H2
我经常去的几个网站[Google][1]、[Java-er.com][2]。
[1]:http://www.google.com 
[2]:https://www.java-er.com
<!md>";


$arr=str_replace(
         ["&#","&nbsp;","&lt;","&gt;","<br>"],
         ["","","","",""],
         $arr);
         
         //echo $arr;
         //$arr=strip_tags($arr);
         //echo $arr;

require_once"Parsedown.func.php";
$Parsedown=new Parsedown();
echo '<meta charset="utf-8">';
$aaa=$Parsedown->text($arr);
echo($aaa);




?>


$arr存在转义字符或者标签,使用md解析无效。
$arrrr是去掉所有的标签和转义符,没问题,
$arr如果使用替换,时灵时不灵的。
跪求大佬给个解决方法
呼叫万能的 @老虎会游泳

附带测试源码。
cs.zl88.net.zip(10.04 KB)

[隐藏样式|查看源码]


『回复列表(9|隐藏机器人聊天)』

1.

应该是替换不彻底,建议调试打印下替换后的结果,不灵应该是替换的问题,替换后还存在无法解析的字符
https://cway.top

(/@Ta/2020-08-17 16:39//)

2.
@作曲,你可以不转义直接解析试一试
以上来自灌水信息,以下来自小尾巴广告宣传!
b6d8a7e017f7f504f2135f7879bbebf91007.gifV1.1版我菜就菜怎么了?https://76wp.cn奇乐网
(/@Ta/2020-08-17 17:02//)

3. @hik,我猜的也是这样。但是打印出来,没找到
(/@Ta/2020-08-17 17:56//)

4. @寻梦xunm,不去掉转义字符,没效果
(/@Ta/2020-08-17 17:57//)

5.

@作曲,我的parsedown好像更坚强,即使原始输入很恶劣也可以正常工作。
你可以在这个位置调试输出,看看我传递给它的原始输入是怎样的。
https://github.com/hu60t/hu60wap6/blob/master/src/class/ubbdisplay.php#L95

(/@Ta/2020-08-17 18:23//)

6.

@作曲,启用这个选项可以让parsedown自动换行,不应该把换行转换为<br>。
在行末加<br>会导致很多效果失效,比如分割线。

$Parsedown->setBreaksEnabled(true); //自动换行
-----[br]

-----

-----

(/@Ta/2020-08-17 18:28//)

7. @老虎会游泳,就是br在捣鬼 ,你居然一下就知道问题所在,我刚刚测试出来已经正常移植
(/@Ta/2020-08-17 18:35//)

8.
QQ图片20200817183822.png
我就把这个看漏了。。。。仔细点我就不用纠结一下午了
(/@Ta/2020-08-17 18:39//)

9. @老虎会游泳,感谢老虎解惑
(/@Ta/2020-08-17 18:39//)

回复需要登录

7月19日 11:09 星期六

本站由hu60wap6驱动

备案号: 京ICP备18041936号-1