好好爱自己!

php中120个内置函数

php中实现事件模式

https://yq.aliyun.com/ziliao/162660

<?php

class Event{

    private $events = [];

    public function listen($name, $callback){
        if(!key_exists($name, $this->events))
            $this->events[$name] = $callback;
    }

    public function trigger($name){
        if(key_exists($name, $this->events)){
            call_user_func($name);
        }
    }


}

$eventManager = new Event();
function go(){
    echo "go event happen!";
}
$eventManager->listen('go', 'go');
//$eventManager->trigger('go');
var_dump(get_defined_functions());

  

------------------------------------------------------

D:\wnmp\www\vidagrid_iot\app\webroot\event.php:27:

array (size=2)
  'internal' => 
    array (size=1355)
      0 => 

string

 'zend_version' (length=12)
      1 => 

string

 'func_num_args' (length=13)
      2 => 

string

 'func_get_arg' (length=12)
      3 => 

string

 'func_get_args' (length=13)
      4 => 

string

 'strlen' (length=6)
      5 => 

string

 'strcmp' (length=6)
      6 => 

string

 'strncmp' (length=7)
      7 => 

string

 'strcasecmp' (length=10)
      8 => 

string

 'strncasecmp' (length=11)
      9 => 

string

 'each' (length=4)
      10 => 

string

 'error_reporting' (length=15)
      11 => 

string

 'define' (length=6)
      12 => 

string

 'defined' (length=7)
      13 => 

string

 'get_class' (length=9)
      14 => 

string

 'get_called_class' (length=16)
      15 => 

string

 'get_parent_class' (length=16)
      16 => 

string

 'method_exists' (length=13)
      17 => 

string

 'property_exists' (length=15)
      18 => 

string

 'class_exists' (length=12)
      19 => 

string

 'interface_exists' (length=16)
      20 => 

string

 'trait_exists' (length=12)
      21 => 

string

 'function_exists' (length=15)
      22 => 

string

 'class_alias' (length=11)
      23 => 

string

 'get_included_files' (length=18)
      24 => 

string

 'get_required_files' (length=18)
      25 => 

string

 'is_subclass_of' (length=14)
      26 => 

string

 'is_a' (length=4)
      27 => 

string

 'get_class_vars' (length=14)
      28 => 

string

 'get_object_vars' (length=15)
      29 => 

string

 'get_class_methods' (length=17)
      30 => 

string

 'trigger_error' (length=13)
      31 => 

string

 'user_error' (length=10)
      32 => 

string

 'set_error_handler' (length=17)
      33 => 

string

 'restore_error_handler' (length=21)
      34 => 

string

 'set_exception_handler' (length=21)
      35 => 

string

 'restore_exception_handler' (length=25)
      36 => 

string

 'get_declared_classes' (length=20)
      37 => 

string

 'get_declared_traits' (length=19)
      38 => 

string

 'get_declared_interfaces' (length=23)
      39 => 

string

 'get_defined_functions' (length=21)
      40 => 

string

 'get_defined_vars' (length=16)
      41 => 

string

 'create_function' (length=15)
      42 => 

string

 'get_resource_type' (length=17)
      43 => 

string

 'get_loaded_extensions' (length=21)
      44 => 

string

 'extension_loaded' (length=16)
      45 => 

string

 'get_extension_funcs' (length=19)
      46 => 

string

 'get_defined_constants' (length=21)
      47 => 

string

 'debug_backtrace' (length=15)
      48 => 

string

 'debug_print_backtrace' (length=21)
      49 => 

string

 'gc_collect_cycles' (length=17)
      50 => 

string

 'gc_enabled' (length=10)
      51 => 

string

 'gc_enable' (length=9)
      52 => 

string

 'gc_disable' (length=10)
      53 => 

string

 'bcadd' (length=5)
      54 => 

string

 'bcsub' (length=5)
      55 => 

string

 'bcmul' (length=5)
      56 => 

string

 'bcdiv' (length=5)
      57 => 

string

 'bcmod' (length=5)
      58 => 

string

 'bcpow' (length=5)
      59 => 

string

 'bcsqrt' (length=6)
      60 => 

string

 'bcscale' (length=7)
      61 => 

string

 'bccomp' (length=6)
      62 => 

string

 'bcpowmod' (length=8)
      63 => 

string

 'jdtogregorian' (length=13)
      64 => 

string

 'gregoriantojd' (length=13)
      65 => 

string

 'jdtojulian' (length=10)
      66 => 

string

 'juliantojd' (length=10)
      67 => 

string

 'jdtojewish' (length=10)
      68 => 

string

 'jewishtojd' (length=10)
      69 => 

string

 'jdtofrench' (length=10)
      70 => 

string

 'frenchtojd' (length=10)
      71 => 

string

 'jddayofweek' (length=11)
      72 => 

string

 'jdmonthname' (length=11)
      73 => 

string

 'easter_date' (length=11)
      74 => 

string

 'easter_days' (length=11)
      75 => 

string

 'unixtojd' (length=8)
      76 => 

string

 'jdtounix' (length=8)
      77 => 

string

 'cal_to_jd' (length=9)
      78 => 

string

 'cal_from_jd' (length=11)
      79 => 

string

 'cal_days_in_month' (length=17)
      80 => 

string

 'cal_info' (length=8)
      81 => 

string

 'ctype_alnum' (length=11)
      82 => 

string

 'ctype_alpha' (length=11)
      83 => 

string

 'ctype_cntrl' (length=11)
      84 => 

string

 'ctype_digit' (length=11)
      85 => 

string

 'ctype_lower' (length=11)
      86 => 

string

 'ctype_graph' (length=11)
      87 => 

string

 'ctype_print' (length=11)
      88 => 

string

 'ctype_punct' (length=11)
      89 => 

string

 'ctype_space' (length=11)
      90 => 

string

 'ctype_upper' (length=11)
      91 => 

string

 'ctype_xdigit' (length=12)
      92 => 

string

 'strtotime' (length=9)
      93 => 

string

 'date' (length=4)
      94 => 

string

 'idate' (length=5)
      95 => 

string

 'gmdate' (length=6)
      96 => 

string

 'mktime' (length=6)
      97 => 

string

 'gmmktime' (length=8)
      98 => 

string

 'checkdate' (length=9)
      99 => 

string

 'strftime' (length=8)
      100 => 

string

 'gmstrftime' (length=10)
      101 => 

string

 'time' (length=4)
      102 => 

string

 'localtime' (length=9)
      103 => 

string

 'getdate' (length=7)
      104 => 

string

 'date_create' (length=11)
      105 => 

string

 'date_create_immutable' (length=21)
      106 => 

string

 'date_create_from_format' (length=23)
      107 => 

string

 'date_create_immutable_from_format' (length=33)
      108 => 

string

 'date_parse' (length=10)
      109 => 

string

 'date_parse_from_format' (length=22)
      110 => 

string

 'date_get_last_errors' (length=20)
      111 => 

string

 'date_format' (length=11)
      112 => 

string

 'date_modify' (length=11)
      113 => 

string

 'date_add' (length=8)
      114 => 

string

 'date_sub' (length=8)
      115 => 

string

 'date_timezone_get' (length=17)
      116 => 

string

 'date_timezone_set' (length=17)
      117 => 

string

 'date_offset_get' (length=15)
      118 => 

string

 'date_diff' (length=9)
      119 => 

string

 'date_time_set' (length=13)
      120 => 

string

 'date_date_set' (length=13)
      121 => 

string

 'date_isodate_set' (length=16)
      122 => 

string

 'date_timestamp_set' (length=18)
      123 => 

string

 'date_timestamp_get' (length=18)
      124 => 

string

 'timezone_open' (length=13)
      125 => 

string

 'timezone_name_get' (length=17)
      126 => 

string

 'timezone_name_from_abbr' (length=23)
      127 => 

string

 'timezone_offset_get' (length=19)
posted @ 2018-12-13 15:45  立志做一个好的程序员  阅读(373)  评论(0编辑  收藏  举报

不断学习创作,与自己快乐相处