php实现显示代码
在PHP中实现代码高亮显示
PHP内置了highlight_string()和highlight_file()函数,可以方便地实现代码高亮显示。这些函数会生成带有HTML标记的代码,通常结合CSS样式来呈现不同语法元素的高亮效果。
基本用法:
$code = '<?php echo "Hello World!"; ?>';
highlight_string($code);
显示文件内容:
highlight_file('example.php');
使用第三方库增强高亮效果
对于更复杂的需求,可以考虑使用第三方库如Geshi或Prism.js:

Geshi示例:
require_once 'geshi.php';
$source = file_get_contents('example.php');
$geshi = new GeSHi($source, 'php');
echo $geshi->parse_code();
前端方案Prism.js:
在HTML中引入Prism.js后,只需为代码块添加特定class:

<pre><code class="language-php">
<?php echo "This will be highlighted"; ?>
</code></pre>
自定义高亮样式
PHP内置高亮函数生成的HTML包含以下class,可通过CSS自定义样式:
.hljs-default .num { color: #098658; }
.hljs-default .str { color: #A31515; }
.hljs-default .kw { font-weight: bold; }
安全注意事项
当显示用户提交的代码时,务必进行过滤处理:
$clean_code = htmlspecialchars($user_code);
highlight_string($clean_code);
完整示例
结合文件读取和高亮显示的完整示例:
$filename = 'sample.php';
if(file_exists($filename)) {
highlight_file($filename);
} else {
echo 'File not found';
}
以上方法可以根据实际需求选择使用,PHP内置函数适合快速实现,而第三方库提供更多语言支持和自定义选项。






