PHP中如何实现类似java的set类型
程序员文章站
2024-04-04 11:03:35
...
如题,如何实现java的set类,目的是向其中存储相同对象仅存储一次。
回复内容:
如题,如何实现java的set类,目的是向其中存储相同对象仅存储一次。
PHP中没有类似java中的set功能。
PHP中存储数据常用的有对象,数组和资源。
在PHP中存储对象通常都用数组来实现。
你只想把相同的对象存储一次,只需要在放入数组前判断该数组是否已经存在相同的对象,于是问题转化成如何判断两个对象相同。
当使用对比操作符(==)比较两个对象变量时,比较的原则是:如果两个对象的属性和属性值 都相等,而且两个对象是同一个类的实例,那么这两个对象变量相等。
而如果使用全等操作符(===),这两个对象变量一定要指向某个类的同一个实例(即同一个对象)。
PHP确实没有现成的set类型的对象
简单的来的话可以用array_unique函数
用php数组,每次插入的时候,用in_array()函数做判断,不存在则插入