PHP 使用get_class_methods()和array_diff() 兩個相同的類中方法差集

时间:2023-03-09 04:54:59
PHP 使用get_class_methods()和array_diff() 兩個相同的類中方法差集

进行二次开发时,习惯一份是原封不动的,一份正在修改。在修改时,发现修改的缺少原项目中的一些方法。本打算一个方法一个方法的对比,可是这样会比较花时间,划不来,PHP可以使用get_class_methods() 获取一个类中的所有方法,返回的是数组,刚好可以使用 array_diff()两个相同类中相差的方法,这两个方法真是帮了大忙。

<?php
/**
* Created by PhpStorm.
* User: wakasann
* Date: 2016/1/28
* Time: 11:46
*/
require_once("Training.php"); //目前的類
require_once("Training_2012.php");//之前的類
function p($arr){
echo "<pre>";
print_r($arr);
echo "</pre>";
}
$traingModel = get_class_methods('Training');
$traingModel2 = get_class_methods('Training_2012'); //p($traingModel);
//p($traingModel2);
//獲取之前的類和現在修改的同一個類中方法的差集
$result=array_diff($traingModel2,$traingModel);
p($result);

最終獲取到了方法差集

PHP 使用get_class_methods()和array_diff() 兩個相同的類中方法差集