嗨,我有一个关于蛞蝓的问题。我正在制作一个注册系统,我的问题是我如何能够添加鼻涕虫加一?我能够检查数据库是否存在 slugname,然后加一这是我下面的代码。
private function saveData($post){
$repeat_password = sha1($post['repeat_password']);
$firstName = $post['firstname'];
$lastName = $post['lastname'];
$result = $firstName.$lastName;
$exists = Doctrine_Core::getTable('User')->findOneBySlug($result);
$i = 1;
while($exists == true){
$newSlug = $firstName.$lastName.$i;
//echo $newSlug; exit();
if($exists == $newSlug){
$newSlug = $firstName.$lastName.$i++;
//echo $newSlug; exit();
}
}
$register = new User();
$register->setFirstName($post['firstname']);
$register->setLastName($post['lastname']);
$register->setEmail($post['repeat_email']);
$register->setPassword($repeat_password);
$register->setSlug($result);
$register->save();
$passwordReminder = new PasswordReminder();
$passwordReminder->setEmail($post['repeat_email']);
$passwordReminder->setHash(md5(md5(time())));
$passwordReminder->save();
return $register->getId();
}
我怎样才能得到蛞蝓的值?并把它插入这里?
$exists = Doctrine_Core::getTable('User')->findOneBySlug($result);
$i = 1;
while($exists == true){
$newSlug = $firstName.$lastName.$i;
//echo $newSlug; exit();
if($exists == $newSlug){
$newSlug = $firstName.$lastName.$i++;
//echo $newSlug; exit();
}
}
我已经遇到这个问题一个星期了,有人可以帮助我吗?
您可以使用 l3pp4rd/DoctrineExtensions 和 Sluggable 行为来为您解决这个问题。
可慢动作行为手册:https://github.com/l3pp4rd/DoctrineExtensions/blob/master/doc/sluggable.md
准备用于 Symfony2 的捆绑包:https://github.com/stof/StofDoctrineExtensionsBundle