Configure your own WAMP environment and extend the oracle function library oci

WBOY
Release: 2016-08-08 09:22:10
Original
1231 people have browsed it

A colleague received a task yesterday to use PHP to process the contents of the Oracle database. However, opening the Oracle extension in PHP cannot be used directly like MySQL. It requires something to open it

The first step is to download an install client package from the Oracle official website. , find your zip corresponding to the system version under win (note here is the system version)

As of 2015-06-25, the download address is as follows http://www.oracle.com/technetwork/database/features /instant-client/index-097480.html

For example, choose Instant Client for Microsoft Windows (x64). Because PHP extends OCI, you must choose the most complete corresponding version. Others do not have OCI. You may need to download it here. If you have an account, you can download it after verification. It is not easy to download directly using the link. If you don’t have one, just register. For the second part, you need to download the expansion pack in the win system, which is the .dll file. Download address http:// pecl.php.net/package/oci8 The following paragraph of nonsense tells you how to find it

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html Click on this address

official Instant Client site. Scroll to the end and click "PHP - OCI8 extension" in Related Developer Centers

Then the tab downloads Click OCI8 to http://pecl.php.net/package/oci8

Then how to download will not work Enough to say

Here you have finished downloading two zip packages, and then configure PHP

Third, decompress the first downloaded file, go to any directory on your computer, and after decompression you will get the file directory instantclient_12 _1 It is recommended to put the "_12_1" at the end Remove it, and you won’t need to touch the environment variable when changing the version in the future. After entering this directory, double-click to open adrci.exe. You will get the following command line window, which proves that this client is available locally. Copy the directory, mine is F :devinstantclient Configure the path environment variable of the system,

Fourth, unzip the downloaded dll compressed package, copy the php_oci8.dll php_oci8_11g.dll php_oci8_12c.dll I currently have these three, to the PHP expansion package file, usually Yes... in the /php/ext/ directory

In fact, you don’t need to replace it, but it is recommended to replace it.

Then open php.ini and open the extension. The last one was added later, and php didn’t originally have it. , anyway, it shouldn’t be wrong to write all the dll files in the package above. At most, load a few more libraries when running php

extension=php_pdo_oci.dll

extension=php_oci8.dll ; Use with Oracle 10gR2 Instant Client

extension =php_oci8_11g.dll ; Use with Oracle 11gR2 Instant Client

extension=php_oci8_12c.dll ; Use with Oracle 12c Instant Client

Then restart the httpd service and open phpinfo(); You should be able to see

PDO support

enabled

PDO drivers

mysql, oci, odbcOCI8 SupportenabledOCI8 DTrace Support
disabled OCI8 Version2.0.8Revision$Id: f04114d4d67cffea4cdc2ed3b7f0229c2caa5016 $Oracle Run-time Client Library Version12.1.0.2.0Oracle Compile-time Instant Client Version 10.2The last step is to connect to the oracle databaseThat’s it , the entire expansion and connection is completed
This explains the extension The opening was successful
Here is an example of connecting to the original text http://www.orczhou.com/index.php/2010/09/php-oci8-oracle/
<span> 1</span> <?<span>php  
</span><span> 2</span><span>//</span><span>配置信息</span><span> 3</span><span>$ora_host</span> = "172.16.1.150"<span>;
</span><span> 4</span><span>$ora_port</span>="1521"<span>;
</span><span> 5</span><span>$ora_sid</span> = "cop"<span>;
</span><span> 6</span><span>$ora_username</span> = "webdev"<span>;
</span><span> 7</span><span>$ora_password</span> = "webdev"<span>;
</span><span> 8</span><span>$charset</span> = "UTF8"; <span>#</span><span>## zhs16gbk ###
</span><span> 9</span><span>10</span><span>//构建Easy Connect string
</span><span>11</span><span>//(如果tnsnames.ora中已经有了,可以直接使用Connect Name)</span><span>12</span><span>$ora_connstr</span> = "<span>(description=(address=(protocol=tcp)
</span><span>13</span> (host=".<span>$ora_host</span>.")(port=".<span>$ora_port</span>."<span>))
</span><span>14</span> (c>$ora_sid</span>.")))"<span>;
</span><span>15</span><span>//</span><span>连接数据库</span><span>16</span><span>$conn</span> = oci_connect(<span>$ora_username</span>, <span>$ora_password</span>,<span>$ora_connstr</span><span>);
</span><span>17</span><span>//</span><span>执行Query,这里$res接收的是一个boolean值</span><span>18</span><span>$stid</span> = oci_parse(<span>$conn</span>, 'select * FROM dq_try_app'<span>);
</span><span>19</span><span>$res</span> = oci_execute(<span>$stid</span><span>);
</span><span>20</span><span>21</span><span>//</span><span>在while循环中使用oci_fetch_array遍历结果。</span><span>22</span><span>while</span> (<span>$row</span> = oci_fetch_array(<span>$stid</span>, OCI_ASSOC+<span>OCI_RETURN_NULLS)) {
</span><span>23</span><span>24</span><span>foreach</span> (<span>$row</span><span>as</span><span>$item</span><span>) {
</span><span>25</span><span>echo</span><span>$item</span>."***"<span>;
</span><span>26</span><span>    }
</span><span>27</span><span>echo</span> "<br>"<span>;
</span><span>28</span><span>29</span><span>}
</span><span>30</span><span>//</span><span>var_dump($stid);   </span><span>31</span> ?>
Copy after login
The above introduces the WAMP environment configured by myself and the extended oracle function library oci, including the content. I hope it will be helpful to friends who are interested in PHP tutorials.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template