這裡我們使用docker來安裝我們的開發環境,docker的安裝參考官方文件首先就是根據我們目標php版本拉取對應的zephir編譯器映象,這裡我們php版本是7.0,於是使用這條命令:
docker pull phalconphp/zephir:7.0
然後建立/usr/local/bin/zephir
檔案,檔案內容如下:
#!/usr/bin/env bash
docker_bin="$(which docker 2> /dev/null)"
# 5.4, 5.5, 5.6, 7, 7.0, latest
php_version=7.0
$ run -it --rm \
--privileged=true \
-e zend_dont_unload_modules=1 \
-v $(pwd):/zephir \
phalconphp/zephir:$ "$@"
ret=$?
if [ $ -ne 0 ]; then
errors="$(pwd)/compile-errors.log"
if [ -e $ ]; then
cat $
fifi
對這個檔案加上可執行許可權:
sudo chmod a+x /usr/local/bin/zephir
這樣我們就裝好了zephir編譯器:
$zephir version
0.9.7
這裡我們建立的專案名叫做utils
,使用zephir腳手架初始化專案**:
zephir init utils
編寫乙個zep檔案:
$ cat utils/utils/greeting.zep
namespace utils;
class greeting
}
$cd utils
$lsconfig.json ext utils
$zephir build
這樣我們就得到了我們編譯的so庫檔案:ext/modules/utils.so
通過php -i
得到我們php拓展so檔案的安裝目錄是:/usr/lib/php/20151012/
下面,於是2條命令完成cli模式php的拓展安裝,fpm模式也類似:
sudo \cp ext/modules/utils.so /usr/lib/php/20151012/
echo "extension=utils.so" | sudo tee /etc/php/7.0/cli/conf.d/30-zephir-dev.ini
最後我們,寫個php檔案來測試下這個so庫是否安裝成功:
$cat > test.php <<_eof
<?php
$obj = new utils\greeting();
var_dump($obj);
utils\greeting::say();
_eof
$php test.php
得到結果:
object(utils\greeting)#1 (0)
hello world!
使用lesscss來編碼編寫css
lesscss使用方法有兩種 頁面新增乙個 less.js的檔案,css使用 style.less 檔案字尾來編寫,不過需要有伺服器的環境支援 在伺服器端使用node.js來編譯,node.js 使用 less的方法如下 先使用npm包管理器來安裝 npm install less 然後就可以使用命...
如何使用 C 方式來編寫驅動
這個問題可能會很無聊,而且覺得連這個題目都不好擬,但我還是以我的方式記下來了,覺得有用的朋友就儘管拿去用,不過我覺得可能性很小 ifdef cplusplus extern c endif 我把頭檔案前面加上extern c 編譯,果然成功了,原來就這麼簡單的說,不錯不錯,我現在終於可以在任何地方定...
使用rvm來快速部署nginx passenger
首先安裝passenger gem install passenger 然後使用passenger install nginx module 來安裝nginx和部署。因為這一步需要root許可權 因為要編譯nginx 可以用rvmsudo這個東西。這個東西真是個好東西 rvmsudo passeng...