2015年6月12日 星期五
編譯php時指定php.ini位置
在compile php時,可以透過--with-config-file-path 參數來指定位置,可以從原始碼複製php.ini 通常有兩個選擇 一個是開發階段的參數 一個則是生產階段的參數
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();
}
如果想要取得物件中取得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
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
安裝套件包
由網頁安裝 composer
vim composer.json
編輯使用參數
php composer.phar install
安裝套件包
2012年6月27日 星期三
Zend Framework多資料庫設定
因為在ZF中資料庫是以資源的方式提供
所以在application.ini中設置
所以在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
來自動執行,如果你手上有現成的資源插件(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_
按照第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
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)
- URL: http://pear.php.net/package/PHPUnit2/
- Home URL: http://www.phpunit.de/
- Stable version: 2.3.6
- Download URL: http://pear.php.net/package/PHPUnit2/download
- Installed Servers: vm1, vm2
- Path: /opt/php/lib/php/PHPUnit/
PHPMailer
- Home URL: http://phpmailer.codeworxtech.com/
- Latest version: 2.2.1
- Download URL: http://phpmailer.codeworxtech.com/index.php?pg=sf&p=dl
- Installed Servers: vm1, vm2
- Path: /opt/php/lib/php/PHPMailer/
Zend Framework
- Home URL: http://framework.zend.com/
- Latest version: 1.6.1
- Download URL: http://framework.zend.com/download/latest
- Installed Server: vm2 (for admin system development)
- Path: /opt/php/lib/php/Zend/
PEAR Package - Excel and Spreadsheet (Reference Only)
- Spreadsheet_Excel_Writer: http://pear.php.net/package/Spreadsheet_Excel_Writer
- Structures_DataGrid_DataSource_Excel: http://pear.php.net/package/Structures_DataGrid_DataSource_Excel
- Structures_DataGrid: http://pear.php.net/package/Structures_DataGrid
- Structures_DataGrid_DataSource_Array: http://pear.php.net/package/Structures_DataGrid_DataSource_Array
- Structures_DataGrid_Renderer_XLS: http://pear.php.net/package/Structures_DataGrid_Renderer_XLS/
Reference
PHP - Email
- PHP Mail Library Presentation: http://www.phplondon.org/conference/2008/media/docs/marcus_bointon_mail_presentation.pdf
- PHPMailer Tips and Tools: http://phpmailer.codeworxtech.com/index.php?pg=tips
- Sending Email with Zend Framework: http://www.talkphp.com/vbarticles.php?do=article&articleid=51&title=sending-emails-with-the-zend-framework
Bounce Email Tracking
- URL: http://forums.devshed.com/php-development-5/bounce-e-mail-tracking-522635.html
- Steps to detect bounce emails: http://www.php.net/manual/sk/ref.mail.php#24963
- PHP class for tracking bounce emails: http://www.phpclasses.org/browse/package/2691.html
- Article on Incoming mails and php: http://www.evolt.org/article/Incoming_Mail_and_PHP/18/27914/
PHP Bulk Email - Best Practice
phplist Features
Wiki
- Bounce Message: http://en.wikipedia.org/wiki/Bounce_message
- Bounce Address Tag Validation (BATV): http://en.wikipedia.org/wiki/Bounce_Address_Tag_Validation
- Sender Policy Framework (SPF): http://en.wikipedia.org/wiki/Sender_Policy_Framework
- Simple Mail Transfer Protocol (SMTP): http://en.wikipedia.org/wiki/Simple_Mail_Transfer_Protocol
- Variable Envelope Return Path (VERP): http://en.wikipedia.org/wiki/Variable_envelope_return_path
Software
- Email Marketing Software (Mach5 Mailer): http://www.mach5.com/products/mailer/index.php
- Email Bounce Handling Solution: http://www.boogietools.com/
2011年11月14日 星期一
Zend Framework 輸出xml的幾種方法
Zend Framework 輸出xml的幾種方法。
見代碼:1.
class TestController extends Zend_Controller_Action {
/**
* The default action - show the home page
*/
public function indexAction() {
$content = "bar ";
header('Content-Type: text/xml');
echo $content;
exit;
}
}
加一句exit;這樣可以不用關閉view.
2.
class TestController extends Zend_Controller_Action {
/**
* The default action - show the home page
*/
public function indexAction() {
// XML-related routine
$xml = new DOMDocument('1.0', 'utf-8');
$xml->appendChild($xml->createElement('foo', 'bar'));
$output = $xml->saveXML();
// Both layout and view renderer should be disabled
Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer')->setNoRender(true);
Zend_Layout::getMvcInstance()->disableLayout();
// Setting up headers and body
$this->_response->setHeader('Content-Type', 'text/xml; charset=utf-8')
->setBody($output);
}
}
第二種方法可以調用DOMDocument對象來創建更豐富的xml.
本文出自“Bob” 博客,請務必保留此出處http://phpbob.blog.51cto.com/636017/631102
見代碼:1.
class TestController extends Zend_Controller_Action {
/**
* The default action - show the home page
*/
public function indexAction() {
$content = "
header('Content-Type: text/xml');
echo $content;
exit;
}
}
加一句exit;這樣可以不用關閉view.
2.
class TestController extends Zend_Controller_Action {
/**
* The default action - show the home page
*/
public function indexAction() {
// XML-related routine
$xml = new DOMDocument('1.0', 'utf-8');
$xml->appendChild($xml->createElement('foo', 'bar'));
$output = $xml->saveXML();
// Both layout and view renderer should be disabled
Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer')->setNoRender(true);
Zend_Layout::getMvcInstance()->disableLayout();
// Setting up headers and body
$this->_response->setHeader('Content-Type', 'text/xml; charset=utf-8')
->setBody($output);
}
}
第二種方法可以調用DOMDocument對象來創建更豐富的xml.
本文出自“Bob” 博客,請務必保留此出處http://phpbob.blog.51cto.com/636017/631102
2011年10月3日 星期一
Function session_register() is deprecated
session_register()函式在php5.3環境下
是不給用的
建議
if(session_register( “abc” )){
echo 'XXX';
}
改為
if($_SESSION['abc'] = null){
echo 'XXX';
}
是不給用的
建議
if(session_register( “abc” )){
echo 'XXX';
}
改為
if($_SESSION['abc'] = null){
echo 'XXX';
}
function ereg() is deprecated
php5.3之後關於正規表示式會出現錯誤
function ereg() is deprecated
請修改函式
ereg("^[0-9]*$",$page)
為
preg_match("/^[0-9]*$/",$page)
function eregi() is deprecated
eregi("^[0-9]*$",$page)
為
preg_match("/^[0-9]*$/i",$page)
function split is deprecated
split函式改為
explode
如果第一個參數為正規表示式則改為
preg_split
function ereg_replace is deprecated
$t_lang_var = ereg_replace( '^TLS_', '', $t_var );
改為
$t_lang_var = preg_replace( '/^TLS_/', '', $t_var );
2011年7月17日 星期日
ZF 在多個地方放置模組
如果想將模組分為核心及外加模組,可透過ZF本身定義設定檔的方式
由
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
修改為
resources.frontController.moduleDirectory[] = APPLICATION_PATH "/modules/core"
resources.frontController.moduleDirectory[] = APPLICATION_PATH "/modules/local"
可以定義多個放置module位置
由
resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
修改為
resources.frontController.moduleDirectory[] = APPLICATION_PATH "/modules/core"
resources.frontController.moduleDirectory[] = APPLICATION_PATH "/modules/local"
可以定義多個放置module位置
2011年7月5日 星期二
PHP讀取資料夾內檔案列表
PHP的內建函式,以物件的方式處理,可以用來顯示資料夾內的檔案
$d = dir($Path);
while( $entry = $d->read() ){
if ($entry!= “.” && $entry!= “..”) {
}
}
closedir($d);
$d = dir($Path);
while( $entry = $d->read() ){
if ($entry!= “.” && $entry!= “..”) {
}
}
closedir($d);
2011年7月3日 星期日
2011年4月22日 星期五
ZendFramework使用FreeTDS連接Sybase
請務必把/etc/freetds.conf
中該資料庫 的TDS版本 設定為tds version = 6.3 或 6.0才會正常
ZF的INI設定
resources.db.adapter = "PDO_MSSQL"
resources.db.params.pdoType = "dblib"
resources.db.params.host = "名稱"
resources.db.params.username = "帳號"
resources.db.params.password = "密碼"
resources.db.params.dbname = "資料庫名稱"
如果沒有設成tds version = 6.3
會有登入錯誤的問題
(SQLSTATE[28000] Login incorrect. (severity 9) )
參考
http://blog.wabow.com/archives/335
中該資料庫 的TDS版本 設定為tds version = 6.3 或 6.0才會正常
ZF的INI設定
resources.db.adapter = "PDO_MSSQL"
resources.db.params.pdoType = "dblib"
resources.db.params.host = "名稱"
resources.db.params.username = "帳號"
resources.db.params.password = "密碼"
resources.db.params.dbname = "資料庫名稱"
如果沒有設成tds version = 6.3
會有登入錯誤的問題
(SQLSTATE[28000] Login incorrect. (severity 9) )
參考
http://blog.wabow.com/archives/335
2011年4月17日 星期日
PHP的__call
在Ruby中如果呼叫該物件沒有的方法時可透過(method_missin)來處理
如果是PHP則透過
def method_missing(id, *args)
return self.find(Regexp.last_match(1), args[0]) if id.id2name =~ /find_by_(.+)/
raise NoMethodError
end如果是PHP則透過
__call來達到同等的目的詳見活用 PHP5 的 magic methods
2011年4月7日 星期四
ZendFramework的分頁
網路上很像很少人在講Zend_Paginator::factory
這個ZF原裝分頁類
在初始化(factory)時,可以用ZF_model或array都可以分頁
$Plists = $qunit -> getList(0);
//分頁設定
$limit = $this -> _getParam('limit', 10);
$page = $this -> _getParam('page', 1);
//分頁
$paginator = Zend_Paginator::factory($Plists);
$paginator -> setCurrentPageNumber($page)
-> setItemCountPerPage($limit);
$uCount = $paginator ->getTotalItemCount();
$this -> view ->assign('fromData', $paginator);
$uCount 總筆數
$limit 每頁筆數
$page 預設從第幾頁開始
$paginator 分頁處理後的資料集
2011年4月6日 星期三
ZendFramework的預設route
當我們的網址Action 為group-user-add時
ctrl會對應至public function groupUserAddAction()
而 view會對應至group-user-add.phtml
當使用group_user_add時
ctrl會對應至groupuseradd
而view還是會對應至group-user-add.phtml
ctrl會對應至public function groupUserAddAction()
而 view會對應至group-user-add.phtml
當使用group_user_add時
ctrl會對應至groupuseradd
而view還是會對應至group-user-add.phtml
所以可以利用下底線的組合來共用同名ctrl切換不同view?
是偶然嗎?
2011年4月1日 星期五
訂閱:
文章 (Atom)