【问题标题】:How to show math equation in php / HTML? [closed]如何在 php / HTML 中显示数学方程式? [关闭]
【发布时间】:2021-02-05 01:47:42
【问题描述】:

我有一个 ckeditor,当我从数据库中获取方程时,我们可以在其中创建数学方程,它看起来像 a+b2,但我想要像 (a+b)^2。那么,我该怎么做呢?请帮帮我。

html_entity_decode($post->answer)

我正在使用html_entity_decode,但它看起来并不完全符合我的要求。

【问题讨论】:

  • 所以^ 不见了?它实际上是否存储在数据库中?
  • 不,先生,实际上它看起来像 <p> <math xmlns="http://www.w3.org/1998/Math/MathML"><mrow><msup><mfenced><mrow><mi>a</mi><mo>+</mo><mi>b</mi></mrow></mfenced><mn>2</mn></msup><mo>=</mo><msup><mi>a</mi><mn>2</mn></msup><mo>+</mo><msup><mi>b</mi><mn>2</mn></msup><mo>+</mo><mn>2</mn><mi>a</mi><mi>b</mi></mrow></math></p> 它在我的数据库中。
  • 谢谢,但如果您有额外的信息,请使用您的问题下方的“编辑”按钮将其添加到您的主帖子中,这样每个人都可以清楚地看到并且可以清晰地格式化,而且您有空间来添加足够的相关细节。此外,我在您的问题中添加了 MathML 标签,因为它似乎是相关的。
  • 无论如何,如果一开始数据库中没有数据,那么您需要追溯输入的代码,然后将数据保存到数据库中。请您提供minimal, reproducible example,然后我们可以通过您的代码正确地跟踪这一点,而不是仅仅看到一行完全脱离上下文。谢谢。

标签: php html math mathml


【解决方案1】:

Browser support for MathML 仍然相当不完整,但您可以通过将 MathJax 库添加到您的 Web 文档来使其在几乎任何浏览器中工作。只需将以下两行添加到您的 HTML:

<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>

然后它应该会正确渲染。例如,尝试运行以下 sn-p:

<script src="https://polyfill.io/v3/polyfill.min.js?features=es6"></script>
<script id="MathJax-script" async src="https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-mml-chtml.js"></script>
<p>&nbsp;<math xmlns="http://www.w3.org/1998/Math/MathML"><mrow><msup><mfenced><mrow><mi>a</mi><mo>+</mo><mi>b</mi></mrow></mfenced><mn>2</mn></msup><mo>=</mo><msup><mi>a</mi><mn>2</mn></msup><mo>+</mo><msup><mi>b</mi><mn>2</mn></msup><mo>+</mo><mn>2</mn><mi>a</mi><mi>b</mi></mrow></math></p>

【讨论】:

  • 感谢先生的回复,但我用&lt;script type="text/javascript" src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML"&gt; &lt;/script&gt;试了一下,效果很好
  • 是的,这也很好。 polyfill 脚本只是增加了对更多浏览器的兼容性。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-04-08
  • 2011-07-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多