阅读SQL/PHP

Ryw*_*wek 0 php sql insert str-replace

我试图简单地阅读,从而重现以下代码.

    INSERT INTO `actions` (`aid`, `type`, `callback`, `parameters`, `description`) VALUES
    ('5', 'system', 'views_bulk_operations_script_action', 'a:1:{s:6:"script";s:452:"$string = $object->field_ruling_content[0][''value''];\r\n// do replacements\r\n$search = array(\r\n ''<h4>Membres</h4>'', \r\n ''<h4>Membre</h4>'',\r\n ''<h2><strong>Membres</strong></h2>'',\r\n ''<h2><strong>Membre</strong></h2>'',\r\n);\r\n$replace = array(\r\n ''<h2>Membres</h2>'',\r\n ''<h2>Membre</h2>'',\r\n ''<h2>Membres</h2>'',\r\n ''<h2>Membre</h2>'',\r\n );\r\n$string = str_replace($search, $replace, $string);\r\n$object->field_ruling_content[0][''value''] = $string;\r\nnode_save($object);";}', 'Cleanup');
Run Code Online (Sandbox Code Playgroud)

让我困惑的唯一一点就是这个a:1:{s:6:"script";s:452:".我试图查找a:1:,s:6:s:452:在谷歌,但它并没有完全得到我,我一直在寻找的结果.它们是什么,它们是什么意思?

cee*_*yoz 6

这是PHP变量的序列化表示.您可以通过运行来解码它unserialize().

一旦你理解它正在做什么,语法就相当简单了.s:6:"script"表示"字符串,六个字符,内容'脚本'".