小编Dan*_*ake的帖子

订阅Paypal IPN

我正在使用Paypal IPN向网站添加订阅,这非常有效,我可以成功创建新订阅并进行验证.订阅有两周的免费试用期.遗憾的是,该指南对订阅状态略显模糊.

目前,一旦收到subscr_signup或subscr_payment,用户帐户就会获得订阅状态,并在收到subscr_cancel或subscr_failed时被删除.我相信这是正确的,但最好确保.

什么是subscr_eot?IPN指南将其描述为"订阅的期末".试用期结束后是否会触发?

paypal paypal-subscriptions paypal-ipn

53
推荐指数
3
解决办法
2万
查看次数

CakePHP:查找字段不为空的位置

我需要选择User.site_url不为null的所有行.在常规MySQL查询中执行此操作非常简单,但是如何在CakePHP中完成此操作?

手册提到了以下内容:

array ("not" => array (
        "Post.title" => null
    )
)
Run Code Online (Sandbox Code Playgroud)

我尝试了以下但它仍然返回一切

$this->User->find('all', array('conditions' => array('not' => array('User.site_url'))));
Run Code Online (Sandbox Code Playgroud)

php cakephp

46
推荐指数
4
解决办法
7万
查看次数

获取第一个字符不是字母数字的行

我正在为我正在开发的一个小项目添加一些新功能,其中一个是alpha分页,看起来像

#0-9 ABCDE ... XYZ

我可以使用类似的东西轻松地通过他们的第一个字母获取项目

SELECT * FROM ... WHERE name LIKE 'A%' ...
Run Code Online (Sandbox Code Playgroud)

将以数字和所有其他字符开头的所有内容分组有点困难,我认为它必须使用MySQLs REGEXP.

为了清楚起见,我需要帮助创建两个查询,这些查询将获取所有行

  • 列的第一个字符是数字
  • 列的第一个字符不是字母数字

regex mysql sql database

13
推荐指数
1
解决办法
1万
查看次数

提高CakePHP中的代码质量

我已经使用CakePHP几个星期了,这是一次很棒的体验.我设法以惊人的速度快速移植了一个网站,我甚至添加了一些我计划但从未实现过的新功能.

查看以下两个控制器,它们允许用户将优质状态添加到链接到其帐户的其中一个站点.他们感觉不是很'蛋糕',他们能以任何方式得到改善吗?

PremiumSites控制器处理注册过程,并最终会有其他相关的事情,如历史记录.

class PremiumSitesController extends AppController {

    var $name = 'PremiumSites';

    function index() {
        $cost = 5;

        //TODO: Add no site check

        if (!empty($this->data)) {
            if($this->data['PremiumSite']['type'] == "1") {
                $length = (int) $this->data['PremiumSite']['length'];
                $length++;
                $this->data['PremiumSite']['upfront_weeks'] = $length;
                $this->data['PremiumSite']['upfront_expiration'] = date('Y-m-d H:i:s', strtotime(sprintf('+%s weeks', $length)));
                $this->data['PremiumSite']['cost'] = $cost * $length;
            } else {
                $this->data['PremiumSite']['cost'] = $cost;
            }

            $this->PremiumSite->create();
            if ($this->PremiumSite->save($this->data)) {
                $this->redirect(array('controller' => 'paypal_notifications', 'action' => 'send', $this->PremiumSite->getLastInsertID()));
            } else {
                $this->Session->setFlash('Please fix the problems below', true, array('class' => 'error')); …
Run Code Online (Sandbox Code Playgroud)

php refactoring cakephp

13
推荐指数
2
解决办法
2350
查看次数

在PHP中加速levenshtein/similar_text

我目前正在使用similar_text将一个字符串与~50,000的列表进行比较,虽然由于比较的数量非常慢,但它仍有效.比较~500个独特字符串大约需要11分钟.

在运行之前,我会检查数据库以查看它是否已经过去处理,因此每次运行后它都接近即时.

我肯定使用levenshtein会稍快一些,并且手册中发布的LevenshteinDistance函数看起来很有趣.我错过了一些可以使这个显着加快的东西吗?

php similarity levenshtein-distance

7
推荐指数
1
解决办法
4640
查看次数

一定范围内的均匀分布的整数

可以说我的范围是0到100,并且我想返回一个包含3个整数的数组,该整数均匀地分布在该范围内,什么是最好的方法?

例如:

范围:0-100
通缉:3
返回:25、50、75

php integer numbers range

5
推荐指数
1
解决办法
1977
查看次数

在CakePHP中使用HABTM进行保存

我一次创建多个关联,在保存方面存在一些问题.

我有以下代码:

<?php
foreach($userData as $user) {
    $data = array('User' => array('id' => $user['id']), 'Site' => array('id' => $user['site_id']));
    $this->User->save($data);
}
?>
Run Code Online (Sandbox Code Playgroud)

虽然我总是遇到同样的问题,但我已经尝试过以不同的方式格式化数据数组.插入新的条目或更新当前条目时,前一个条目将被移动.

我可以使用以下内容,但我需要触发一个行为.

$this->User->SiteUser->save($data);
Run Code Online (Sandbox Code Playgroud)

编辑:还$ this-> User-> create(); 似乎做得不多.

php cakephp has-and-belongs-to-many

3
推荐指数
1
解决办法
3540
查看次数

CakePHP中的变量命名约定

命名包含多个单词的变量的最佳方法是什么?在完成CakePHP forge中的许多项目后,我注意到人们使用camelCase,下划线或camelCase来获取发送到视图的数据的变量和下划线.

最后一个例子是:

$activeSites = $this->Site->find('all',array('conditions'=>array('Site.active' => '1'), 'recursive' => -1));
$this->controller->set('active_sites', activeSites);
Run Code Online (Sandbox Code Playgroud)

php cakephp naming-conventions

2
推荐指数
2
解决办法
2515
查看次数

提高我的正则表达能力

我一直想要提高我的正则表达技能已经有一段时间了,而且"掌握正则表达式"被推荐了很多次,所以我买了它并且在过去一天左右阅读它.

我创建了以下正则表达式:

^(?:<b>)?(?:^<i>)?<a href="/site\.php\?id=([0-9]*)">(.*?) \(([ a-z0-9]{2,10})\)</a>(?:^</i>)?(?:</b>)?$
Run Code Online (Sandbox Code Playgroud)

哪个匹配前两个链接但忽略<i>标记所包含的两个链接.它提取id,标题和类型.

<a href="/site.php?id=6321">site 1 title (type 1)</a>
<b><a href="/site.php?id=10254">site 2 title (type 2)</a></b>

<i><a href="/site.php?id=5479">site 3 title (type 3)</a></i>
<b><i><a href="/site.php?id=325">site 4 title (type 4)</a></i></b>
Run Code Online (Sandbox Code Playgroud)

虽然它有效,但对于这么简单的东西来说似乎相当长,可以改进吗?

html regex matching

0
推荐指数
1
解决办法
375
查看次数