Heim  >  Artikel  >  Backend-Entwicklung  >  Konfigurieren Sie Ihre eigene WAMP-Umgebung und erweitern Sie die Oracle-Funktionsbibliothek oci

Konfigurieren Sie Ihre eigene WAMP-Umgebung und erweitern Sie die Oracle-Funktionsbibliothek oci

WBOY
WBOYOriginal
2016-08-08 09:22:101233Durchsuche

Ein Kollege hat gestern die Aufgabe erhalten, den Inhalt einer Oracle-Datenbank mit PHP zu verarbeiten. Allerdings kann PHP die Oracle-Erweiterung nicht direkt öffnen. Zum Öffnen ist etwas erforderlich.

Der erste Schritt ist zu Oracle Laden Sie offiziell ein Installations-Client-Paket herunter und suchen Sie Ihre ZIP-Datei, die der Systemversion entspricht unter Win (beachten Sie, dass es sich hier um die Systemversion handelt)

Stand 2015-06 -25, Die Download-Adresse lautet wie folgt: http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html

Wählen Sie beispielsweise Instant Client für Microsoft Windows ( x64) Da PHP OCI erweitert, müssen Sie die Version mit der vollständigsten entsprechenden Version auswählen. Möglicherweise benötigen Sie zum Herunterladen ein Konto. Der direkte Download ist nicht möglich den Link. Wenn Sie noch keinen haben, registrieren Sie sich einfach. Im zweiten Teil müssen Sie das Erweiterungspaket im Win-System herunterladen. Die Download-Adresse lautet http://pecl. php.net/package/oci8 Der folgende Unsinn soll Ihnen sagen, wie Sie ihn finden

http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html Klicken Sie auf der

offiziellen Instant Client-Website unter dieser Adresse. Scrollen Sie bis zum Ende und klicken Sie auf „Verwandte Entwicklerzentren“ „PHP – OCI8-Erweiterung“

Klicken Sie dann auf die Registerkarte „Downloads“ und klicken Sie auf „OCI8 zu http://“. pecl.php.net/package/oci8

Dann werde ich nicht viel darüber sagen, wie man es herunterlädt

Schließen Sie hier den Download von zwei Zip-Paketen ab und konfigurieren Sie dann PHP

Drittens dekomprimieren Sie die erste heruntergeladene Datei, wechseln Sie in ein beliebiges Verzeichnis auf dem Computer. Nach der Dekomprimierung erhalten Sie das Dateiverzeichnis „_12_1“. Es wird empfohlen, es zu entfernen um die Umgebungsvariable zu ändern, wenn Sie die Version in Zukunft ändern

Geben Sie dieses Verzeichnis ein und doppelklicken Sie, um adrci.exe zu öffnen

um das folgende Befehlszeilenfenster zu erhalten, das beweist, dass dieser Client vorhanden ist lokal verfügbar

Kopieren Sie das Verzeichnis, meins ist F:devinstantclient, konfiguriert für die Pfadumgebungsvariable des Systems,

Viertens entpacken Sie das heruntergeladene DLL-komprimierte Paket und kopieren Sie es php_oci8 darin. dll php_oci8_11g.dll php_oci8_12c.dll Ich habe derzeit diese drei in der PHP-Erweiterungspaketdatei, normalerweise ...

im /php/ext/-Verzeichnis. Eigentlich brauchen Sie das nicht um es zu ersetzen, aber es wird immer noch empfohlen, es zu ersetzen,

und dann php.ini zu öffnen und die Erweiterung zu öffnen. Wie auch immer, PHP hat es ursprünglich nicht Das obige Paket wurde geschrieben. Es sollte höchstens in Ordnung sein. Laden Sie ein paar weitere Bibliotheken

extension=php_oci8.dll ; 10gR2 Instant Client

extension=php_oci8_11g.dll ; Verwendung mit Oracle 11gR2 Instant Client

extension=php_oci8_12c.dll ; Verwendung mit Oracle 12c Instant Client

Dann starten Sie den httpd-Dienst neu und öffnen Sie phpinfo(); Sie sollten

Auf diese Weise sehen können. Dies bedeutet, dass die Erweiterung erfolgreich geöffnet wurde

PDO support enabled
PDO drivers mysql, oci, odbc
Schließlich ist die Oracle-Datenbank verbunden
OCI8 Support enabled
OCI8 DTrace Support disabled
OCI8 Version 2.0.8
Revision $Id: f04114d4d67cffea4cdc2ed3b7f0229c2caa5016 $
Oracle Run-time Client Library Version 12.1.0.2.0
Oracle Compile-time Instant Client Version 10.2

Hier ist eine Beispiel für die Verbindung zum Originaltext http://www.orczhou.com/index.php/2010/09/php-oci8-oracle/

An dieser Stelle der gesamte Ausbau und Anschluss ist abgeschlossen

<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> ?>
Das Obige stellt die von mir konfigurierte WAMP-Umgebung und die erweiterte Oracle-Funktionsbibliothek oci vor, einschließlich des Inhalts. Ich hoffe, dass es für Freunde hilfreich ist, die sich für PHP-Tutorials interessieren.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:Klasse SQLite3 nicht gefundenNächster Artikel:Klasse SQLite3 nicht gefunden