2015年5月7日 星期四

getConstants

php中反射(ReflectionClass)的語法


如果想要取得物件中取得const的陣列可以使用



    const STATE0 = 'open';
    const STATE1 = 'close';
    const STATE2 = 'run1';
    const STATE3 = 'run2';
    const STATE4 = 'run3';
   
    static function getConstants() {
        $oClass = new ReflectionClass(__CLASS__);
        return $oClass->getConstants();
    }

2014年6月14日 星期六

生為ZF的擁護者 來看一下Fedora 20 Yum lib的收藏清單

該如何下手呢?先看一下Fedora20 的Yum 收藏清單
yum search ZendFramework2

php-ZendFramework2 : Zend Framework 2
php-ZendFramework2-Authentication : Zend Framework 2: Authentication Component
php-ZendFramework2-Barcode : Zend Framework 2: Barcode Component
php-ZendFramework2-Cache : Zend Framework 2: Cache Component
php-ZendFramework2-Cache-apc : Zend Framework 2: Cache Component: APC
php-ZendFramework2-Cache-memcached : Zend Framework 2: Cache Component: Memcached
php-ZendFramework2-Captcha : Zend Framework 2: CAPTCHA Component
php-ZendFramework2-Code : Zend Framework 2: Code Component
php-ZendFramework2-Config : Zend Framework 2: Config Component
php-ZendFramework2-Console : Zend Framework 2: Console Component
php-ZendFramework2-Crypt : Zend Framework 2: Crypt Component
php-ZendFramework2-Db : Zend Framework 2: DB Component
php-ZendFramework2-Debug : Zend Framework 2: Debug Component
php-ZendFramework2-Di : Zend Framework 2: DI Component
php-ZendFramework2-Dom : Zend Framework 2: DOM Component
php-ZendFramework2-Escaper : Zend Framework 2: Escaper Component
php-ZendFramework2-EventManager : Zend Framework 2: EventManager Component
php-ZendFramework2-Feed : Zend Framework 2: Feed Component
php-ZendFramework2-File : Zend Framework 2: File Component
php-ZendFramework2-Filter : Zend Framework 2: Filter Component
php-ZendFramework2-Form : Zend Framework 2: Form Component
php-ZendFramework2-Http : Zend Framework 2: HTTP Component
php-ZendFramework2-I18n : Zend Framework 2: i18n Component
php-ZendFramework2-InputFilter : Zend Framework 2: InputFilter Component
php-ZendFramework2-Json : Zend Framework 2: JSON Component
php-ZendFramework2-Ldap : Zend Framework 2: LDAP Component
php-ZendFramework2-Loader : Zend Framework 2: Loader Component
php-ZendFramework2-Log : Zend Framework 2: Log Component
php-ZendFramework2-Mail : Zend Framework 2: Mail Component
php-ZendFramework2-Math : Zend Framework 2: Math Component
php-ZendFramework2-Memory : Zend Framework 2: Memory Component
php-ZendFramework2-Mime. : Zend Framework 2: MIME Component
php-ZendFramework2-ModuleManager : Zend Framework 2: ModuleManager Component
php-ZendFramework2-Mvc : Zend Framework 2: MVC Component
php-ZendFramework2-Navigation : Zend Framework 2: Navigation Component
php-ZendFramework2-Paginator : Zend Framework 2: Paginator Component
php-ZendFramework2-Permissions-Acl : Zend Framework 2: Permissions ACL Component
php-ZendFramework2-Permissions-Rbac : Zend Framework 2: Permissions RBAC Component
php-ZendFramework2-ProgressBar : Zend Framework 2: ProgressBar Component
php-ZendFramework2-Serializer : Zend Framework 2: Serializer Component
php-ZendFramework2-Server : Zend Framework 2: Server Component
php-ZendFramework2-ServiceManager : Zend Framework 2: ServiceManager Component
php-ZendFramework2-Session : Zend Framework 2: Session Component
php-ZendFramework2-Soap : Zend Framework 2: SOAP Component
php-ZendFramework2-Stdlib : Zend Framework 2: Stdlib Component
php-ZendFramework2-Tag : Zend Framework 2: Tag Component
php-ZendFramework2-Test : Zend Framework 2: Test Component
php-ZendFramework2-Text : Zend Framework 2: Text Component
php-ZendFramework2-Uri : Zend Framework 2: URI Component
php-ZendFramework2-Validator : Zend Framework 2: Validator Component
php-ZendFramework2-Version : Zend Framework 2: Version Component
php-ZendFramework2-View : Zend Framework 2: View Component
php-ZendFramework2-XmlRpc : Zend Framework 2: XML-RPC Component

2012年12月14日 星期五

安裝 composer

curl -s http://getcomposer.org/installer| php
由網頁安裝 composer
vim composer.json
編輯使用參數
php composer.phar install
安裝套件包

2012年6月27日 星期三

Zend Framework多資料庫設定

因為在ZF中資料庫是以資源的方式提供
所以在application.ini中設置
[production]
resources.multidb.db1.adapter = "pdo_mysql"
resources.multidb.db1.host = "localhost"
resources.multidb.db1.username = "webuser"
resources.multidb.db1.password = "XXXX"
resources.multidb.db1.dbname = "db1"
resources.multidb.db2.adapter = "pdo_pgsql"
resources.multidb.db2.host = "example.com"
resources.multidb.db2.username = "dba"
resources.multidb.db2.password = "notthatpublic"
resources.multidb.db2.dbname = "db2"
resources.multidb.db2.default = true
再由Bootstrap取得資料庫

$resource = $bootstrap->getPluginResource('multidb');
$db1 = $resource->getDb('db1');
$db2 = $resource->getDb('db2');
$defaultDb = $resource->getDb();

2012年6月22日 星期五

ZendFramework的bootstrap

在ZendFramework的bootstrap中,如果方法名稱以_init為前綴,將被當成資源方法
來自動執行,如果你手上有現成的資源插件(Pluging),可以透過前導的方法 將該資源
排定執行 但該注意的是 當你是使用module模式時 所有module下的bootstrap將會全部
執行 造成 資源重載  效能低下 後來是以取得該module name為判斷 當非執行該module就return 不繼續執行執行非該module的pluging


class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
{
    protected function _initView()
    {
        $view = new Zend_View();
        // more initialization...
        return $view;
    }
}
class FooController extends Zend_Controller_Action
{
    public function init()
    {
        $bootstrap = $this->getInvokeArg('bootstrap');
        $view = $bootstrap->getResource('view');
        // ...
    }
}

2011年11月15日 星期二

Linux Pipe小工具

Linux sort的常用
按照第5個字段進行排序
[root@test2 smartlsData]# ll | sort -t : +5n-rwxrwxrwx 1 root root 178718700 12月22 18:40 Poi.bal-rwxrwxrwx 1 root root 182348152 12月22 18:40 Poi.bas-rwxrwxrwx 1 root root 18441600 12月22 18:40 Poi.ndx-rwxrwxrwx 1 root root 194056 2006-08-29 wordTableEntry.txt-rwxrwxrwx 1 root root 194056 9月15 16:31 GeoWordTableEntry.txt-rwxrwxrwx 1 root root 20580 12月22 18:40 ACode.ndx-rwxrwxrwx 1 root root 338304 2006-08-10 AnTable.txt-rwxrwxrwx 1 root root 43680 2006-08-10 CnTable.txt-rwxrwxrwx 1 root root 4929920 2006-08-29 wordTable.txt-rwxrwxrwx 1 root root 4929920 9月15 16:31 GeoWordTable.txt-rwxrwxrwx 1 root root 6664 9月14 16:25 data.xml-rwxrwxrwx 1 root root 9220800 12月22 18:40 LsID.idx
按照純數字進行排序(否則按照字母方式進行排序)
[root@test2 smartlsData]# ll | sort -n-rwxrwxrwx 1 root root 178718700 12月22 18:40 Poi.bal-rwxrwxrwx 1 root root 182348152 12月22 18:40 Poi.bas-rwxrwxrwx 1 root root 18441600 12月22 18:40 Poi.ndx-rwxrwxrwx 1 root root 194056 2006-08-29 wordTableEntry.txt-rwxrwxrwx 1 root root 194056 9月15 16:31 GeoWordTableEntry.txt-rwxrwxrwx 1 root root 20580 12月22 18:40 ACode.ndx-rwxrwxrwx 1 root root 338304 2006-08-10 AnTable.txt-rwxrwxrwx 1 root root 43680 2006-08-10 CnTable.txt-rwxrwxrwx 1 root root 4929920 2006-08-29 wordTable.txt-rwxrwxrwx 1 root root 4929920 9月15 16:31 GeoWordTable.txt-rwxrwxrwx 1 root root 6664 9月14 16:25 data.xml-rwxrwxrwx 1 root root 9220800 12月22 18:40 LsID.idx總用量 390484


Linux wc 的使用
wc -l 行號
wc -m
wc -w
[root@test2 smartlsData]# ll | wc -l13
替換
[root@test2 smartlsData]# ll | tr -d 'A'總用量 390484-rwxrwxrwx 1 root root 20580 12月22 18:40 Code.ndx-rwxrwxrwx 1 root root 338304 2006-08-10 nTable.txt-rwxrwxrwx 1 root root 43680 2006-08-10 CnTable.txt-rwxrwxrwx 1 root root 6664 9月14 16:25 data.xml-rwxrwxrwx 1 root root 194056 9月15 16:31 GeoWordTableEntry.txt-rwxrwxrwx 1 root root 4929920 9月15 16:31 GeoWordTable.txt-rwxrwxrwx 1 root root 9220800 12月22 18:40 LsID.idx-rwxrwxrwx 1 root root 178718700 12月22 18:40 Poi.bal-rwxrwxrwx 1 root root 182348152 12月22 18:40 Poi.bas-rwxrwxrwx 1 root root 18441600 12月22 18:40 Poi.ndx-rwxrwxrwx 1 root root 194056 2006-08-29 wordTableEntry.txt-rwxrwxrwx 1 root root 4929920 2006-08-29 wordTable.txt
[root@test2 smartlsData]# ll | cut -d " " -f 4
 
rootrootrootrootrootrootrootrootrootrootrootroot
拆分 按照大小 和 行 來拆分
split -b 1m detailWebsite.htm detailWebsite.htm_split -l 5 detailWebsite.htm detailWebsite.htm_

yum 收藏的php pear庫

yum list |grep php-pear|cut -d " " -f 1
php-pear.noarch
php-pear-Auth.noarch
php-pear-Auth-OpenID.noarch
php-pear-Auth-RADIUS.noarch
php-pear-Auth-SASL.noarch
php-pear-Auth-Yubico.noarch
php-pear-Auth-radius.noarch
php-pear-Auth-samba.noarch
php-pear-Auth_HTTP.noarch
php-pear-Benchmark.noarch
php-pear-CAS.noarch
php-pear-Cache.noarch
php-pear-Cache-Lite.noarch
php-pear-CodeGen.noarch
php-pear-CodeGen-PECL.noarch
php-pear-Console-Color.noarch
php-pear-Console-CommandLine.noarch
php-pear-Console-Getargs.noarch
php-pear-Console-ProgressBar.noarch
php-pear-Console-Table.noarch
php-pear-Crypt-Blowfish.noarch
php-pear-Crypt-CHAP.noarch
php-pear-DB.noarch
php-pear-DB-DataObject.noarch
php-pear-DB-DataObject-FormBuilder.noarch
php-pear-DB-QueryTool.noarch
php-pear-Date.noarch
php-pear-Date-Holidays.noarch
php-pear-Date-Holidays-USA.noarch
php-pear-Event-Dispatcher.noarch
php-pear-File.noarch
php-pear-File-Bittorrent2.noarch
php-pear-File-Find.noarch
php-pear-File-Passwd.noarch
php-pear-File-SMBPasswd.noarch
php-pear-HTML-Common.noarch
php-pear-HTML-QuickForm.noarch
php-pear-HTML-QuickForm-ElementGrid.noarch
php-pear-HTML-QuickForm-advmultiselect.noarch
php-pear-HTML-Table.noarch
php-pear-HTML-Template-IT.noarch
php-pear-HTML_Javascript.noarch
php-pear-HTML_Template_PHPLIB.noarch
php-pear-HTTP.noarch
php-pear-HTTP-Client.noarch
php-pear-HTTP-OAuth.noarch
php-pear-HTTP-Request.noarch
php-pear-HTTP-Request2.noarch
php-pear-HTTP-Upload.noarch
php-pear-Image-Canvas.noarch
php-pear-Image-Color.noarch
php-pear-Image-Graph.noarch
php-pear-Image-GraphViz.noarch
php-pear-Log.noarch
php-pear-MDB2.noarch
php-pear-MDB2-Driver-mysql.noarch
php-pear-MDB2-Driver-mysqli.noarch
php-pear-MDB2-Driver-pgsql.noarch
php-pear-MDB2-Schema.noarch
php-pear-Mail.noarch
php-pear-Mail-Mime.noarch
php-pear-Mail-mimeDecode.noarch
php-pear-Math-Stats.noarch
php-pear-Net-Curl.noarch
php-pear-Net-DIME.noarch
php-pear-Net-DNS.noarch
php-pear-Net-FTP.noarch
php-pear-Net-IDNA2.noarch
php-pear-Net-IPv4.noarch
php-pear-Net-POP3.noarch
php-pear-Net-Ping.noarch
php-pear-Net-SMTP.noarch
php-pear-Net-Sieve.noarch
php-pear-Net-Socket.noarch
php-pear-Net-Traceroute.noarch
php-pear-Net-URL.noarch
php-pear-Net-URL-Mapper.noarch
php-pear-Net-URL2.noarch
php-pear-Net-UserAgent-Detect.noarch
php-pear-Numbers-Roman.noarch
php-pear-Numbers-Words.noarch
php-pear-OLE.noarch
php-pear-PEAR-Command-Packaging.noarch
php-pear-PHP-CodeSniffer.noarch
php-pear-PHP-Compat.noarch
php-pear-PHP-CompatInfo.noarch
php-pear-Pager.noarch
php-pear-Payment-Process.noarch
php-pear-PhpDocumentor.noarch
php-pear-PhpDocumentor-docs.noarch
php-pear-SOAP.noarch
php-pear-Services-Twitter.noarch
php-pear-Services-Weather.noarch
php-pear-Spreadsheet-Excel-Writer.noarch
php-pear-Structures-DataGrid.noarch
php-pear-Structures-DataGrid-DataSource-Array.noarch
php-pear-Structures-DataGrid-DataSource-DataObject.noarch
php-pear-Structures-DataGrid-DataSource-MDB2.noarch
php-pear-Structures-DataGrid-DataSource-RSS.noarch
php-pear-Structures-DataGrid-Renderer-Pager.noarch
php-pear-Structures-DataGrid-Renderer-Smarty.noarch
php-pear-Text-Diff.noarch
php-pear-Validate.noarch
php-pear-Validate-Finance-CreditCard.noarch
php-pear-Var-Dump.noarch
php-pear-XML-Beautifier.noarch
php-pear-XML-Parser.noarch
php-pear-XML-RPC2.noarch
php-pear-XML-RSS.noarch
php-pear-XML-Serializer.noarch
php-pear-phing.noarch



Additional PEAR Library

PHPUnit (for Unit Testing)

PHPMailer

Zend Framework

PEAR Package - Excel and Spreadsheet (Reference Only)


Reference

PHP - Email

Bounce Email Tracking

PHP Bulk Email - Best Practice

phplist Features

Wiki

Software