独行剑侠 发表于 2023-4-22 21:24

如何将github的md用php打印txt形式展现?

本帖最后由 独行剑侠 于 2023-4-22 21:28 编辑

我在github上传了md的文档。

但是我想在自己的服务器用php的方式读取它。

并且只读取md的<code>标签里的内容。

并且输出打印txt文档。

请教诸位大神php如何实现?

比如使用echo file_get_contents的方式……??

<?php
echo file_get_contents("https://github.com/**/**.md");
?>

有没有更简单粗暴的方式,我只要纯文字txt打印输出即可……

独行剑侠 发表于 2023-4-24 11:45

本帖最后由 独行剑侠 于 2023-4-24 12:01 编辑

ehepls 发表于 2023-4-23 08:07
这样?
可以的非常棒!
我将
Content-Type:application/json
改为了
Content-Type:text/plain

这似乎更合适。
那么问题也来了。

可以在本地生成txt文件嘛?


好吧,不闲聊,直接说了

$time = date("Y-m-d H:i:s");
$save = $strr." ".$time."\n";
file_put_contents("1.txt",$save,FILE_APPEND);


感谢诸位大神~

爱飞的猫 发表于 2023-4-22 21:51

转到 html 然后解析,提取所有 pre 标签的内容合并

或者找个 markdown ast 解析库,php 有没有就不知道了。

ehepls 发表于 2023-4-23 08:07

<?php
error_reporting(0);
header('Content-Type:application/json;Charset=UTF-8');//html文件类型,UTF-8类型

$str = http_get('https://github.com/djun/wechatbot/blob/main/README.md');


$strr = getSubstr($str,'<code>','</code>');


echo $strr;



//取文本中间
function getSubstr($str, $leftStr, $rightStr)
{
    $left = strpos($str, $leftStr);
    //echo '左边:'.$left;
    $right = strpos($str, $rightStr,$left);
    //echo '<br>右边:'.$right;
    if($left < 0 or $right < $left) return '';
    return substr($str, $left + strlen($leftStr), $right-$left-strlen($leftStr));
}
//取文本中间
//取网页源码
function http_get($url)
{
    $Header=array( "User-Agent:Mozilla/5.0 (iPhone; CPU iPhone OS 11_0 like Mac OS X) AppleWebKit/604.1.38 (KHTML, like Gecko) Version/11.0 Mobile/15A372 Safari/604.1");
    $con=curl_init((string)$url);
    curl_setopt($con,CURLOPT_HEADER,False);
    curl_setopt($con,CURLOPT_SSL_VERIFYPEER,False);
    curl_setopt($con,CURLOPT_RETURNTRANSFER,true);
    curl_setopt($con,CURLOPT_HTTPHEADER,$Header);
    curl_setopt($con,CURLOPT_TIMEOUT,5000);
    $result = curl_exec($con);
    return $result;
}

?>






http://gpt.qianzhihe.fun/QQ%E5%9B%BE%E7%89%8720230423080706.png

这样?

孟坤软件 发表于 2023-4-23 09:02

把链接由
```
https://github.com/**/**.md
```

改成

```
https://raw.githubusercontent.com/**/**.md
```

就是纯文本的
页: [1]
查看完整版本: 如何将github的md用php打印txt形式展现?