Jupyter Notebook 下安裝 PHP 內核

我最近被強烈安利了 Jupyter Notebook 這個交互式筆記本。而後試用了它自帶的 Python 內核後,這個應用總體給個人感受很不錯,就去搜索了下它所支持的其它內核 Jupyter Kernels。我在下面內容介紹下該應用下如何安裝 PHP 內核。

安裝步驟

安裝 PHP 內核 Jupyter-PHPphp

環境要求

  1. PHP >= 7.0
  2. 已安裝 Jupyter Notebook
  3. Mac 上操做

步驟

  1. 全局安裝 Composergit

    $ curl -sS https://getcomposer.org/installer | php
    $ mv composer.phar /usr/local/bin/composer
  2. 安裝 PHP-ZMQ 擴展github

    (1) 下載編譯composer

    $ git clone git://github.com/mkoppanen/php-zmq.git
    
    $ cd php-zmq
    
    $ phpize && ./configure
    
    $ make && make install

    (2)修改配置curl

    修改 php.ini 配置,添加 `extension=/path/modules/zmq.so`
  3. 下載 jupyter-php-installer.phar
  4. 執行 phar 安裝程序

    $ php jupyter-php-installer.phar installurl

  5. 安裝成功,顯示 The Jupyter-PHP kernel has been successfully installed.

遇到並解決的問題

問題 1:

編譯 PHP-ZMQ 無 autoconf 和 pkg-configdebug

解決:

$ brew install autoconf
    $ brew install pkg-config

問題 2:

Mac 上無 php.inicode

解決:

$ sudo cp /etc/php.ini.default /etc/php.ini

問題 3:

編譯的擴展 zmq.so 沒法移動到 PHP 默認擴展路徑 /usr/lib/php/extensions/no-debug-non-zts-20160303/ip

解決:

由於 macOS 系統完整性保護(SIP)將阻止你將 zmq.so 移動到默認路徑下,而我又不想關閉SIP。因此處理辦法是引入擴展寫入絕對路徑get

extension=/path/modules/zmq.so

問題 4:

使用 PHP 內核 並 print 打印出現了雙輸出

解決:

實際是由於它將打印的值和返回值無差異的輸出致使的,而做者暫未解決。查看 issues

相關文章
相關標籤/搜索