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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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() 兩個相同的類中方法差集的主要内容,如果未能解决你的问题,请参考以下文章

PHP 类/对象函数

PHP对象上可用的显示方法

php 怎么获取当前函数名称 ?

thinkphp框架中获取类里面的所有方法

获取方法的参数?

OOP中常用到的函数