Php 从数据库运行脚本
PHP脚本是否可能在数据库中插入一段代码,然后某个守护进程看到它被放入数据库,然后运行代码?有点像cron作业或作业队列。从技术上讲,您可以这样做。代码应存储在文本列中,然后您可以使用Php 从数据库运行脚本,php,Php,PHP脚本是否可能在数据库中插入一段代码,然后某个守护进程看到它被放入数据库,然后运行代码?有点像cron作业或作业队列。从技术上讲,您可以这样做。代码应存储在文本列中,然后您可以使用eval对其进行评估: 这不是一个很好的主意,有几个原因:存储在数据库中的代码不受版本控制,而且安全隐患相当严重。大多数作业队列系统存储“作业类型”和“作业参数”,而不是可执行代码。作业类型可以是要包含的文件名,也可以是要在OOP设置中实例化的类的名称。然后调用在那里定义的特定函数,传入参数 如果首先使用seria
eval
对其进行评估:
这不是一个很好的主意,有几个原因:存储在数据库中的代码不受版本控制,而且安全隐患相当严重。大多数作业队列系统存储“作业类型”和“作业参数”,而不是可执行代码。作业类型可以是要包含的文件名,也可以是要在OOP设置中实例化的类的名称。然后调用在那里定义的特定函数,传入参数
如果首先使用
serialize
函数将作业参数转换为字符串,则作业参数可以是任何PHP数据结构 将代码放入数据库通常是个坏主意。最好让代码位于守护进程端,只需传递您希望代码操作的参数。请这样想:如果有人侵入您的数据库并运行任意代码,该怎么办?好的,但如果我需要它在队列中呢?