使用我的一种非强语言构建插件,PHP。
在这个插件中,我需要一个为我存储ID的函数,并在每次执行时使用给定值增加它。 W 这个代码我可以实现:每次执行增加给定值+1
$wpdb->query("UPDATE `wp_selector` SET `name`= name+1 WHERE 1");
每次执行后的结果:1,2,3,4,5 ..等等
尝试使用相同的方法,我的初始值是'ABC000001',试图实现ABC000001,ABC000002,...... ABC056211
结果:1,2,3 ..
当插件激活时,我创建表并将我的初始值如“ABC000001”放入“名称”
如何用+1增加值并保持我的值的结构,所以它将转到'ABC000001'并继续增加,所以它最终会像'ABC999999'而不是'ABC00000999999'
答案 0 :(得分:1)
存储自定义全局数据是wp_options表的用途,Wordpress有一些功能可以帮助您解决此问题。根据你想要它的工作方式,你可以用几种不同的方式,但我会做这样的事情......
function myplugin_create_id() {
//Check if you have an ID stored
$current_id = get_option( 'myplugin_id', 1 );
//Add one to create new ID
$new_id = $current_id + 1;
//Update option in DB
update_option( 'myplugin_id', $new_id );
//Create string in correct format
$formatted_id = 'ABC';
$formatted_id .= str_pad( $current_id, 6, "0", STR_PAD_LEFT);
//Return formatted ID
return $formatted_id;
}
此函数在选项表中存储一个数字,每次向数字加1并返回格式化字符串,方法是在前面加上'ABC'存储的数字,并使用str_pad()确保数字字符串长度为6位。
现在,每当您想要生成新ID时,您都可以使用...
$id = myplugin_create_id();
希望这是你正在寻找的答案。
此致
丹