この記事では「PHP拡張機能を書くためのZephirの解析(1)」を紹介します。一定の参考値があるので、困っている友達が参考になれば幸いです。
PHP 拡張機能を作成するには、c または c 言語と ext_skel を使用して実装する必要があることはよく知られています。
これは PHPer にとって非常に不親切ですZephir
zephir
のスローガンは次のとおりです。php
を書けるなら、php# も書けます。 ##Extension
最初にインタープリタをインストールします#https://
github.com/palcon/php -zephir-parsergit clone
git:// github.com/palcon/php-zephir-parser.git
cd php-zephir-parser
#phpize
./configure
##make re2c## がインストールされていません#手動インストール
wget http://sourceforge.net/ projectcd re2c-0.16 ./configure && make && make install#sudo make install
# 次に、ini を編集して
extension=zephir_parser.so
を追加します。zephir.phar をインストールします
wget https://github.com/zephir-lang/zephir/releases/download/0.13.0-alpha- 1/zephir.pha
インストール成功
Zephir をインストールしたら、コーディング段階に進むことができます
array_where 拡張機能を実装する 配列フィルタリング
$array = []; $array[0]['name'] = 'zhangsan'; $array[0]['chinese'] = '89'; $array[0]['math'] = '95'; $array[0]['english'] = '88'; $array[1]['name'] = 'lisi'; $array[1]['chinese'] = '91'; $array[1]['math'] = '86'; $array[1]['english'] = '90'; $where=array( array('k'=>'name','conditions'=>'=','v'=>'zhangsan'), array('k'=>'chinese','conditions'=>'>','v'=>'86')) $new_array = array_where(array,$where); var_dump($new_array);
を実装する方法は、mysql の複数条件クエリ フィルタリングに似ています。
ネイティブの PHP 記述方法を使用すると、foreach のループとなり、非常に非効率的になります。
▏この記事は、原著者 PHP Cui Xuefeng の同意を得て、PHP 中国語 Web サイトに掲載されました。元のアドレス: https://zhuanlan .zhihu.com/p/352504439
以上がZephir の分析と PHP 拡張機能の作成 (1)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。