phpphar
A. php extension 哪些
php extension就是php的擴展,這個擴展是有很多的,如:
HTTP extension for PHP旨在為PHP應用提供一個方便而強大的功能擴展 。它簡化了處理的HTTP網址,日期,重定向,HTTP 頭信息,消息,客戶的首選語言和字元集,以及提供便捷的數據高速緩存和恢復的方法。它提供了強大的功能,如果和 CURL 一起編譯的話將提供更強大的請求處理功能。PHP5或者更新版本提供並行請求處理;
extension_loaded—檢查一個擴展是否已經載入,說明extension_loaded()使用內置擴展名稱來測試一個擴展是否有效。 大多數內置擴展名稱是小寫的,但也有擴展使用大寫字元。 在 PHP 5 之前,此函數以大小寫敏感的方式對比名稱;
這里我給你看下小部分的截圖,如果你有興趣可以自行去下載一個php的安裝包來看:
B. php的phar文件怎麼打開
一般有下面兩種方式:
include
'myphar.phar';
這樣把phar中所有的文件都引入了。
include
'phar://myphar.phar/test/time.php';
這個只把test目錄下的time.php文件引入了。
引入後可以直接使用原php文件中變數。
還可以直接讀取:
echo
file_get_contents('phar://my.phar/file.txt');
這個會輸出
hi。
C. php常用擴展有哪些
這個是php擴展庫支持。
在php.ini裡面可以看到952行。
extension=php_rar.dll
;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll
;extension=php_exif.dll
;extension=php_fileinfo.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_intl.dll
;extension=php_imap.dll
;extension=php_interbase.dll
extension=php_ldap.dll
extension=php_mbstring.dll
;extension=php_ming.dll
;extension=php_mssql.dll
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_oci8_11g.dll
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_phar.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
;extension=php_zip.dll
extension= php_memcache.dll
每一行前面分號去掉的表示開啟擴展庫的。
有些擴展庫是安裝的時候默認開啟的,有些需要手動開啟。
還有一些擴展庫需要自己去下載庫文件(要對應相應的版本)
下載的庫文件放在php安裝根目錄下面的ext目錄下面。當然這個目錄也是可以自己配置的。
D. PHP中的phar包怎麼使用
使用phar壓縮包
<?phpinclude 'swoole.phar';include 'swoole.phar/code/page.php';
使用phar可以很方便的打包你的代碼,集成部署到線上機器。
E. php namespace下如何使用include '*.phar'包下的類
namespace a
include 'c.phar'
class b{
public function test{
$r=new c\d\foo();//
F. 編譯php5.34時出現make: *** [ext/phar/phar.php] 錯誤 127 怎麼解決
確認libmcrypt包裝了。重新編譯一次。我的就是這個問題。希望能幫到你。
G. php composer怎麼用
Composer很好的解決了PHP的包管理和依賴問題,只需要import一個文件,Composer中管理的所有庫就會按需載入,而不需要每個import。
先介紹一下Composer的安裝。Composer的官方地址: https://getcomposer.org/
安裝
curl -sS https://getcomposer.org/installer | php
這樣在當前目錄下會下載一個composer.phar的文件,為了方便,我們可以重命名一下,並放到/usr/local/bin下,方便執行。
mv composer.phar /usr/local/bin/composer
使用
一般我習慣把Composer放在/opt下,所以先創建一個Composer的目錄
mkdir /opt/composer
先下載一個KLogger,一個寫日誌的庫,本人比較喜歡。
cd /opt/composer
composer require katzgrau/klogger:dev-master
這樣,KLogger就被下載下來了,使用很簡單,只需要引入一個文件。
<?php
require '/opt/composer/vendor/autoload.php';
$logger = new Katzgrau\KLogger\Logger(__DIR__.'/logs');
...
KLogger可以使用了,我們在下載一個別的庫,Medoo:一個輕量級的資料庫框架。同樣的方式來下載。
cd /opt/composer
composer require catfan/Medoo
使用同理
<?php
require '/opt/composer/vendor/autoload.php';
$medoo = new medoo();
//繼續使用KLogger
$logger = new Katzgrau\KLogger\Logger(__DIR__.'/logs');
...
使用很簡單,只要引入了 vendor/autoload.php ,就可以自動引入用到庫,的確很酷。
加速
如果發現composer執行起來很慢,可以考慮換個鏡像。這里推薦一個日本的鏡像: http://composer-proxy.jp/ 。
執行
composer config -g -e
編輯後
{
"config": {}
,
"repositories": [
{ "packagist": false },
{
"type": "composer",
"url": "http://composer-proxy.jp/proxy/packagist"
}
]
}
如果發現composer長時間沒反應,可以在執行時候加入 -vvv 選項,可以輸出更多信息,方便查找問題。
composer -vvv require ...
最後
PHP的 spl_autoload_register 可以很方便做按需引入,當 new 一個類沒發現的時候,就會觸發,然後我們自己按照規則來處理引入。
一個簡單的例子
<?php
class ClassAutoloader
{
public function __construct()
{
spl_autoload_register(array($this, 'loader'));
}
public function loader($className)
{
$file = dirname(__FILE__) . '/' . $className . '.php';
if (is_file($file)) {
require $file;
}
}
}
$autoloader = new ClassAutoloader();
H. php 打包文件phar能否在不解包的請況下 在指定目錄增加一個test.php文件
一般有下面兩種方式來:
include 'myphar.phar';
這樣把phar中所有的文件都引入了源。
include 'phar://myphar.phar/test/time.php';
這個只把test目錄下的time.php文件引入了。
引入後可以直接使知用原php文件中變數道。
還可以直接讀取:
echo file_get_contents('phar://my.phar/file.txt');
這個會輸出 hi。
I. php 的 phar 如何解壓並歸檔為zip
用把ZIP流轉換成byte類型,之後用PHP的ZIP解壓方法讀取。或者讓伺服器端別用ZIP壓縮數據,就直接傳遞數據,也沒多少時間
J. .php文件如何文件轉換為.phar文件
有個phar的類,看手冊