如何在mysql表中存储PHP代码

时间:2010-01-15 18:27:18

标签: php mysql

我正在构建一个小的php / mysql脚本,它会像wordpress博客一样,但只是一个小网站,我的眼睛只存储PHP代码片段。因此,我将使用javascript语法高亮显示器编写示例代码的类别和页面。而不是将我的PHP代码片段存储在文件中,我想将它们保存到mysql DB。那么将PHP保存到mysql并将其从mysql中删除以显示在页面上的最佳方法是什么?

我的最终结果将是这样的 alt text http://img2.pict.com/c1/c4/69/2516419/0/800/screenshot2b193.png


更新

我不确定在将代码发送到mysql之前是否需要对代码执行一些特殊操作,因为它中包含所有不同类型的字符

6 个答案:

答案 0 :(得分:10)

按原样存储在text字段中。除此之外没有更多。

答案 1 :(得分:3)

如果您没有使用某种数据库抽象层,只需在文本上调用mysql_real_escape_string即可。

答案 2 :(得分:2)

你想能够搜索php代码吗?如果是这样,我建议使用MyISAM表类型,因为它支持full text indexes(InnoDB没有)。对于fulltext索引,您对列类型的选择是charvarchartext。我会选择text,因为您的代码段可能会因其他类型而过长。

值得一提的另一点是确保在插入之前正确地逃避所有php代码(或任何值)。最好的方法是使用参数化查询。

答案 3 :(得分:0)

除非我错过了部分问题,否则您应该将其安全地存储在MySQL数据库中的TEXT字段中。只需使绝对确定清理代码片段,因为特别是PHP代码很可能包含将从SQL字符串中转义的字符。 (如果您已经在使用SQL框架,那么框架正在为您做这件事。)

答案 4 :(得分:0)

以文本(varchar)的形式存储在数据库中。

使用级联样式表(css)格式化代码。

http://qbnz.com/highlighter/

答案 5 :(得分:0)

试试这个:

mysql select ...

eval('?>' .  $row['phpcode'] . '<?php ');