如何在PHP中建立持久对象标识?

时间:2019-05-26 17:22:52

标签: php

我有下一个问题:

我正在尝试形成我保存的对象数组的标识。这个身份,我将在生成这些对象后再次检查,看它是否与新一代新产生的相同性相同或不同-如果是,请使用该身份更新我的数据库(应该是唯一字符串) ,否则,我什么也不做。代码如下:

class GoodSuggestion {}
class BadSuggestion {}
class MiscSuggestion {}

$container_items = [new GoodSuggestion, new BadSuggestion, new MiscSuggestion];

$identity = createIdentityFromObjects( $container_items );

//If my identity from NOW doesn't match the past identity, it means we have a new object inside
if( $identity != retrievePastIdentityFromDatabase() ) {

    //And so, we re-generate the suggestions
    $generated_suggestions = $generator->generateSuggestion( $container_items );

    //and update the database with the new identity so that in the future, before we generate, we can check again.
    updateIdentityInTheDatabase( $identity );
}

考虑到我的要求,如何才能可靠地为对象建立身份?

在某些情况下,对象属于同一Base_Object,因此我也需要计算内部数据。

我确实承认不能计算实现细节之间的差异的局限性(例如,将单个字符添加到相同的类,否则添加为相同的类)。这需要根据合理的条件计算出一个身份字符串。

0 个答案:

没有答案