PHP extension, an implementation of helloworld_PHP tutorial
php extension, an implementation of helloworld
php -v
PHP 5.5.9-1ubuntu4.7 (cli) (built: Mar 16 2015 20:47:39)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans
Configuration reference article: http://blog.csdn.net/niujiaming0819/article/details/8543028
This article also uses the steps in the reference article to implement the process on this machine
step 1. Download the php source code package. You can download it from the php official website. This time, the php5.6.8 version is used
step 2. Unzip the compressed package and enter the decompressed package (mysoft$ cd php-5.6.8/). Use the ls command to view the file directory in the source package and enter the ext folder (cd ext)

step 3. Establish an extension development framework ./ext_skel --extname=helloworld
Execute the above command to establish the framework for expansion development. You will find that there is an additional folder called helloworld under the ext folder, and some text is also output from the command line,
You will be prompted with the general steps to generate the extension.

step 4. Enter the root directory of the php source code and edit the file vim ext/helloworld/config.m4
Remove a few lines of comments in this file, which will be roughly between lines 16-19. The specific version may be different and then save the file (: wq)
step 5. Execute the command ./buildconf --force
in the php source code root directory
step 6. Compile the php program in the root directory of the php source code. Note that the command is ./configure --with-helloworld
The last error that occurred was not processed
step 7. Enter our extension directory helloworld and execute the command phpize (install phpize through sudo apt-get install php5-dev). At this time, your extension directory will generate many files that can be used Post compilation.
step 8.Compile our extension in the helloworld directory./configure --with-php-config=/usr/bin/php-config (use the php-config of your own environment) -- enable-helloworld
You can find the location of your php-config file through a command (find / -name php-config) as shown in the figure: My address is /usr/bin/php-config
step 9. Enter the extended helloworld directory, edit the file php_helloworld.h, and add the function PHP_FUNCTION(helloworldTest);
in the last linehelloworldTest can be changed to your favorite name, then save and exit
step 10. Open helloword.c with vim, implement our function in helloworld.c, then add the helloworldTest function to helloworld_functions[], save and exit
step 11.Execute the make command to compile the extension. I ran it relatively smoothly. If an error occurs, please carefully check the previous steps to see if there are any errors. I also made errors when I did it for the first time. Generally, there is a problem with the previous steps.
step12. Copy the compiled helloworld.so file to your local php extension directory
The extension directory can be viewed through php -r phpinfo(); | grep extension_dir to view the extension path of native php
step 13. Configure php.ini to enable helloworld.so extension
View the location of php.ini (php -r phpinfo(); | grep php.ini )
vim opens the php.ini file sudo vim /etc/php5/cli/php.ini
Add extension (extension=helloworld.so) at the end of the file
Tested by php -r phpinfo(); | grep helloworld
step 14. Test extension (php -r echo helloworldTest();)
During this process, I tried following the original author’s steps, but an error occurred
Segmentation fault” (core dumped)
After debugging, the original author changed PHP_FE_END to {null,null,null} when adding it to helloworld_functions[] in the helloworld.c file. When he compiled it again, there was no error, but he also commented PHP_FE_END. Modification After that, just recompile and copy.

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics

You can check which extensions are used by PHP by viewing the phpinfo() function output, using command line tools, and checking the PHP configuration file. 1. View the phpinfo() function output, create a simple PHP script, save this script as phpinfo.php, and upload it to your web server. Access this file in the browser and use the browser's search function. Just look for the keyword "extension" or "extension_loaded" on the page to find information about the extension.

How to use PHP to extend PDO to connect to Oracle database Introduction: PHP is a very popular server-side programming language, and Oracle is a commonly used relational database management system. This article will introduce how to use PHP extension PDO (PHPDataObjects) to connect to Oracle database. 1. Install the PDO_OCI extension. To connect to the Oracle database, you first need to install the PDO_OCI extension. Here are the steps to install the PDO_OCI extension: Make sure

How to use PHP to extend the report generation function of SuiteCRM SuiteCRM is a powerful open source CRM system that provides rich functions to help enterprises manage customer relationships. One of the important functions is report generation. Using reports can help enterprises better understand their business situations and make correct decisions. This article will introduce how to use PHP to extend the report generation function of SuiteCRM and provide relevant code examples. Before starting, you need to make sure that SuiteCRM is installed.

When developing with PHP, we may need to use some PHP extensions. These extensions can provide us with more functions and tools, making our development work more efficient and convenient. But before using these extensions, we need to install them first. This article will introduce you to how to install PHP extensions. 1. What is a PHP extension? PHP extensions refer to components that provide additional functionality and services to the PHP programming language. These components can be installed and used through PHP's extension mechanism. PHP extension can help us with

Pagoda Panel is an open source server management panel. While providing website operators with convenient website management, database management, SSL certificate management and other services, it also provides powerful PHP extension and PHP version management functions, making server management easier. Be more simple and efficient. 1. PHP extension PHP extension is a module used to enhance PHP functions. By installing PHP extensions, more functions and services can be implemented, such as: accelerator: accelerator can significantly improve PHP performance, and reduce service load by caching PHP scripts.

PHP is a popular server-side scripting language that can handle dynamic content on web pages. The geoip extension for PHP allows you to get information about the user's location in PHP. In this article, we’ll cover how to use PHP’s geoip extension. What is the GeoIP extension for PHP? The geoip extension for PHP is a free, open source extension that allows you to obtain data about IP addresses and location information. This extension can be used with the GeoIP database, a database developed by MaxMin

PHP extension development is the art of creating custom functionality, extending PHP core functionality and building more powerful applications. It opens up new possibilities in the PHP world, allowing developers to transcend the basic limitations of the language. This article will take you on a journey of PHP extension development, providing you with comprehensive knowledge and practical guidance from basic concepts to advanced techniques. PHP extension development basics Before starting PHP extension development, you need to understand some basic concepts. What are PHP extensions? A PHP extension is a dynamic link library (DLL) that extends PHP core functionality and provides new data types, functions and classes. Advantages of PHP Extensions PHP extensions have many advantages, including: scalability, flexibility, performance optimization, and code reuse. PHP

Tutorial: Use Aurora Push and its PHP extension to add push message functionality to your application. Introduction: In today's mobile application development, push message functionality has become an indispensable part of various applications. Aurora push is one of the most commonly used and most popular solutions in this regard. This tutorial will introduce how to use Aurora Push and its PHP extension to add message push functionality to your application, and provide corresponding code examples for reference. 1. Introduction to Jiguang Push Jiguang Push is a cross-platform message push solution based on cloud services.
