Laravel 使用 tinymce 从内容中提取摘录
Laravel extract excerpt from content using tinymce
我使用 tinymce 作为富文本编辑器,并通过插入 <!-- pagebreak -->
标签的分页按钮将摘录与内容分开。我想知道从数据库中提取摘录的最佳方法是什么。
我知道我可以使用 preg_math
以及 preg_split
,但它真的是最佳和优化的解决方案吗?
将摘录保存在单独的专栏中不是更好更快吗?
这应该可以工作,无需使用任何正则表达式函数:
$pagebreak = '<!-- pagebreak -->';
$content = 'I am the excerpt<!-- pagebreak -->I am the rest of the content';
$excerpt = substr($content, 0, strpos($content, $pagebreak));
$restOfTheContent = substr($content, strpos($content, $pagebreak) + strlen($pagebreak));
var_dump($excerpt); // string(16) "I am the excerpt"
var_dump($restOfTheContent); // string(28) "I am the rest of the content"
请注意,这实际上仅设计用于 单个 分页符。如果需要多个分页符,修改它以根据字符串 $content
生成一个 $pages
数组并不难。
我使用 tinymce 作为富文本编辑器,并通过插入 <!-- pagebreak -->
标签的分页按钮将摘录与内容分开。我想知道从数据库中提取摘录的最佳方法是什么。
我知道我可以使用 preg_math
以及 preg_split
,但它真的是最佳和优化的解决方案吗?
将摘录保存在单独的专栏中不是更好更快吗?
这应该可以工作,无需使用任何正则表达式函数:
$pagebreak = '<!-- pagebreak -->';
$content = 'I am the excerpt<!-- pagebreak -->I am the rest of the content';
$excerpt = substr($content, 0, strpos($content, $pagebreak));
$restOfTheContent = substr($content, strpos($content, $pagebreak) + strlen($pagebreak));
var_dump($excerpt); // string(16) "I am the excerpt"
var_dump($restOfTheContent); // string(28) "I am the rest of the content"
请注意,这实际上仅设计用于 单个 分页符。如果需要多个分页符,修改它以根据字符串 $content
生成一个 $pages
数组并不难。