本文目錄一覽:
- 1、win7下安裝Apache2.4+php5.6之後,不能加載php擴展模塊
- 2、php如何利用串口連接電路板
- 3、怎麼用php與串口進行通信
- 4、如何安裝新的PHP擴展模塊
- 5、linux 怎麼看php擴展模塊是否加載成功
- 6、無法加載php擴展
win7下安裝Apache2.4+php5.6之後,不能加載php擴展模塊
嘗試如下操作:
1、
在php.ini中設置extension_dir
指向e:\php5.4\ext;
部分php擴展加載了
2、設置windows系統環境變量,
phpext,
指向e:\php5.4\ext,
PHPRC
指向e:\php5.4
設置path環境變量,添加e:\php5.4
3、重新啟動apache
php如何利用串口連接電路板
php在部分應用偶爾和串口直接通信,需要和rs232、rs485接口上的數據進行通信。
php與串口通信,基本有兩種途徑,通過php擴展dio,下載dio擴展:http://在php.ini打開dio擴展。
dio開啟後可以通過dio_opendio_read等函數進行通信。
但dio默認只是在linux下的,好像pecl也有編譯後的php_dio.dll,但我在win下測試其實無法正常使用,可能是我php版本太高,dio擴展如果能打開,網上自然有很多實例。
怎麼用php與串口進行通信
1.通過php擴展dio。
下載dio擴展:
在php.ini打開dio擴展。
dio開啟後可以通過dio_open dio_read等函數進行通信。但dio默認只是在Linux下的,好像pecl也有編譯後的php_dio.dll,但我在win下測試其實無法正常使用,可能是我php版本太高(5.3.3)。
dio擴展如果能打開,網上自然有很多實例
?php
$c = stream_context_create(array(‘dio’ =
array(‘data_rate’ = 115200,
‘data_bits’ = 8,
‘stop_bits’ = 1,
‘parity’ = 0,
‘is_canonical’ = 1)));
if (PATH_SEPARATOR != “;”) {
$filename = “dio.serial:///dev/ttyS0″;
} else {
$filename = “dio.serial://COM1″;
}
?
2.PHP_SER擴展
這是一個第三方擴展,可以在php5.3.3上正常使用,我測試結果是比較穩定,提供了單字節流通信和異步通信。對於單字節流通信我還專門請教了作者,發現原來可以通過loop讀取數據流的。需要注意的是ser_write()的數據是字符型,但是ser_read()的數據則是10進制。所以發送的時候最好轉換為hex,接收後由十進制再轉為十六進制才能正常使用。
還有就是php_ser作為第三方擴展,作者是收費的。免費版本沒有功能限制,只是每次收發字節數不能超過1024字節。
function x_get_cgqbh() {
$str = ‘at+ver?’;
$str = hexToStr($str);
ser_open( “COM1″, 9600, 8, “None”, “1″, “None” );
if (ser_isopen()) {
return “opened, post data ……”;
}else{
return false;
}
ser_write(“$str”);
sleep(1);
$str = ser_read();
ser_close();
return $str;
}
如何安裝新的PHP擴展模塊
php安裝好後,可能在初次安裝時,會有些模塊會有遺漏,但是我們又不想重新編譯php,因為耗時是比較長的。我們可不可以在不重新編譯安裝php的情況下,來為php單獨添加某一個模塊呢?查找資料,發現還是有方法的,重點就是phpize了,於是寫了這篇文章.
下面我們就以單獨為php加載mysqli模塊為例,演示如何動態為php添加模塊。
1、找到php原碼安裝文件
2、cd /home/php/ext/myslqi
3、運行 /usr/local/php/bin/phpize
4、/configure –with-php-config=/usr/local/php/bin/php-config
5、make make install
6、安裝完成之後會在系統/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/這個目錄下面生成mysqli.so的庫文件
7、編輯php.ini文件,指定php到哪人目錄讀取模塊
vi /usr/local/php/etc/php.ini
extension_dir=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613″
extension=mysqli.so
8、重啟php服務 /usr/local/php/sbin/php-fpm restart
7、/usr/local/php/bin/php -m|grep mysqli 查看mysqli.so是否存在
如果步驟正確,你的人口也不差的情況下,應該這樣php的動態模塊加載就完成了。
linux 怎麼看php擴展模塊是否加載成功
?php phpinfo(); ?
寫一個測試文件,內容為上面,運行它,可以看到具體生效配置信息。
找找對應的擴展是否存在即可。
無法加載php擴展
1、請檢查模塊是否開啟。
2、開啟的模塊文件,是否在模塊文件目錄。
3、檢查模塊文件及目錄的權限,755或777
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/241788.html