導航:首頁 > 源碼編譯 > 金蝶php如何編譯文字

金蝶php如何編譯文字

發布時間:2022-08-28 11:56:52

⑴ 請問高手php+apache+mysql 安裝後如何編繹PHP

php環境搭建
//以下為windows2000系統下的安裝,可能在其它系統下安裝有點不同

安裝 apache2.0.55
把 PHP5.1.1解壓到c:/
安裝 MySQL5.0.17
安裝 phpMyAdmin-2.7.0-pl1

//下面開始配置apache

第一:修改web地址

查找DocumentRoot,大概行數235。如改成"d:/web" (注意要用反斜杠)

第二:修改默認主頁

查找DirectoryIndex,加入index.php index.htm,大概行數333

第三:選擇安裝模式

======模塊化安裝配置=====//我選擇的就是這種安裝==========

查找LoadMole,大概行數174
在下面加入一行:LoadMole php5_mole c:/php/php5apache2.dll
其中c:/php/php5apache2.dll 為你php目錄中php5apache2.dll所在的位置
查找AddType application/x-gzip .gz .tgz,大概行數773
在下面加入一行:AddType application/x-httpd-php .php
===============模塊化安裝配置 結束==========================

//////////////CGI安裝配置///////////////////////
找到 AddType application/x-gzip .gz .tgz 這行,加入如下即可
ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php
Action application/x-httpd-php "/php/php-cgi.exe"
////////////////////CGI安裝配置結束///////////////

//開始配置PHP

第一:文件到系統目錄

將php目錄里的 php5ts.dll,libmysql.dll 拷到,系統目錄(system/system32)
如可能的是D:\windows\system里

第二:修改php.ini配置文件

把c:/php/php.ini-dist重命名為php.ini,並到c:/winnt目錄下(其他系統可能不是這樣)

第三:修改c:/winnt/php.ini里內容

找到 extension_dir = "./" 改為 extension_dir = "c:/php/ext"(大概行數464)
找到 ;extension=php_mbstring.dll 把;去掉(大概行數569,php載入的模塊都在這里)
找到 ;extension=php_mysql.dll
將';'去掉改為
extension=php_mysql.dll
找到
;session.save_path = "/tmp"(861行)
將';'去掉 設置你保存session的目錄,如
session.save_path = "c:/php/session_temp";
找到

//安裝MySQL

第一:安裝MySQL

第二:修改用戶,密碼。

mysqladmin -u root -p password 123456
回車出現
Enter password: ( 注:這是叫你輸入原密碼. 剛安裝時密碼為空,所以直接回車即可)
此時mysql 中賬號 root 的密碼 被改為 123456 安裝完畢

//安裝phpMyAdmin

第一:解壓phpMyAdmin,把phpmyadmin 到d:/root 下的任何目錄。

第二:修改phpmyadmin目錄下的config.inc.php,修改登陸用戶密碼。

//語言設置(可能不用設置)

打開 Apache2\conf\httpd.conf 這個文件
找到 AddDefaultCharset ISO-8859-1 將其改為 AddDefaultCharset GB2312 (讓默認語言編碼為簡體中文)

===================
在確保apache,mysql服務已啟動的情況下,測試

在d;/web目錄下見個index.php文件,

<?php
echo "php環境搭建成功";
?>
在瀏覽器上輸入http://127.0.0.1後
如果顯示內容為「php環境搭建成功」
說明你的php環境搭建成功了。

⑵ 將php文件拿到,如何在瀏覽器中輸出該網頁編譯後的HTML源碼

自己安裝一個php伺服器環境,將php文件放在自建的伺服器相應的目錄下,然後通過瀏覽器訪問就OK了

⑶ php如何反編譯

PHP的編譯是線性的編譯過程, 不做優化, 所以這個過程非常之快。
而編譯和執行分離這個特性的提出著認為分離以後, 可以省掉編譯過程, 會有很大的性能提升.
代碼如下:
$ find ./ -name "*.php" -exec php -r "apc_bin_mpfile(array('{}'), array(), '{}' . '.bin');" \;

⑷ php怎麼用

推薦閱讀:騰訊T3-T4標准精品PHP架構師教程目錄大全,只要你看完保證薪資上升一個台階(持續更新)點擊此處

⑸ 如何把自己寫的php源代碼變成程序,就像windows下的計算器那樣

PHP是編程語言和應用程序伺服器的結合。PHP和其它的編程語言類似,使用變數存儲臨時數值,使用操作符處理變數。PHP的真正價值在於它是一個應用程序伺服器。

當談到應用程序伺服器的時候,我是指一個把幾個不同的技術組合為一個完整的套件的程序。這些技術包括:
* 一個強壯的編程語言。
* 存取資料庫中存儲的數據。
* 支持 Internet協議,尤其是電子郵件和HTTP協議。

注意:應用程序伺服器有許多其它的特性,這里只列出了最基本的特性。

由於提供了這些多種不同技術的前端介面,PHP可以使工作變的很容易。
本章的其它部分講述了有關PHP的許多繁雜資料,以及它在應用軟體開發中起到的作用。

1.1 起源
PHP是由Rasums Lerdorf創建的,它開始是一個簡單的用Perl語言編寫的程序,用來記錄Rasums Lerdorf自己在線簡歷的訪問者。以後它又被用C語言重新寫過,范圍擴大到訪問資料庫。在這期間,有許多人向Rasums Lerdorf要此程序的拷貝,以便自己使用。Rasums Lerdorf為此寫了一些介紹此程序的文檔,並發布PHP v1.0。以後,越來越多的人開始使用PHP,並強烈要求增加一些其他的特性,如循環語句和數組變數等。到這時,其他的一些程序員也開始參與PHP源碼的編寫(主要有Zeev Suraki和Andi Gutmans),很明顯,此時的PHP為了以後的發展,必須重新編寫。因此,PHP v3.0就出現了。
1.2 特性
PHP的特性包括:
* 開放源碼 -- 所有的PHP源碼都可以得到。事實上,所有的源碼都包含在隨書附帶的光碟中。
* 沒有運行費用 -- PHP是免費的。
* 基於伺服器端 -- 由於PHP是在Web伺服器端運行的,PHP程序可以很大、很復雜而不會降低客戶端的運行速度。
* 跨平台 -- 雖然本書是以linux為重點介紹的,但PHP程序可以運行在UNIX,Linux,或者Windows操作系統下。
* 嵌入HTML -- 因為PHP語言可以嵌入到HTML內部,所以PHP很容易學習。
* 簡單的語言 -- 和java和C++不同,PHP語言堅持以基本語言為基礎,然而它的功能也強大到足以支持任何類型的Web站點。
* 效率高 -- 和其它的解釋性語言相比,PHP系統消耗較少的系統資源。當PHP作為Apache Web伺服器的一部分時,運行代碼不需要調外部二進製程序,伺服器解釋腳本不需要承擔任何額外負擔。
* 分析XML -- 用戶可以組建一個可以讀取XML信息的PHP版本。
* 資料庫模塊 -- 用戶可以使用PHP存取Oracle、Sybase、MS SQL、Adabase D、MySQL、mSQL、PostgreSQL、dBase、FilePro、Unix dbm、Informix/Illustra等類型的資料庫,以及任何支持ODBC標準的資料庫。
* 文件存取--PHP有許多支持文件存取函數。
* 文本處理--PHP有許多函數處理字元串,其中包括模式匹配的能力。
* 復雜的變數--PHP支持標量、數組、關聯數組等變數,這給用戶提供了以支持其它的高級數據結構的堅實基礎。
* 圖象處理--用戶可以使用PHP動態的創建圖象。
* 更多的其它功能!

1.3 PHP需要花費多少錢?
PHP是免費的。所有的源碼、文檔都可以免費的復制、編譯、列印和分發。用戶的任何一個用PHP編寫的程序都屬於用戶自己,可以按照自己的意願進行處理,而不需要付任何版稅。就PHP本身而言,用戶可以無限制地發布自己編寫的程序。
然而,有著很充分的理由,PHP並不是徹底的「公共領域」代碼。如果PHP源碼是完全的公共領域代碼,很可能就有人對PHP的源碼做很小的修改,然後編譯並出售--換一句話說,從它的創作者中脫離出來。但從另一方面說,如果不公布源碼,很難使想使用它的用戶感到放心。
GNU通用公共許可是一種發布免費軟體的方法,它可以避免其他人佔有你的勞動成果。在符合GNU許可的條件下,源碼可以自由地發布,並且任何一個人都可以使用,但是任何來源於此代碼的程序必須以同樣種類的許可方式發布。換句話說,如果用戶從任何GNU許可下的源碼中得到代碼而編寫自己的程序,用戶必須給任何想得到源碼的人共布自己的源碼。
1.4 PHP語言可以嵌入HTML中
當使用者使用經典程序設計語言(如C或Pascal)編程時,所有的代碼必須編譯成一個可執行的文件,然後該可執行文件在運行時,為遠程的Web瀏覽器而產生可顯示的HTML標記。但另一方面,PHP並不需要編譯(至少不編譯成可執行文件)。使用者可以把自己的代碼混合到HTML中。例如,下面的代碼將顯示「Hello,world!」,PHP代碼在下面以黑體字顯示。

<HTML>
<HEAD><TITLE>Test</TITLE></HEAD>
<BODY>
<?PHP $string = 'world!'; ?>
<H1>Hello,<?php echo $string ?></H1>
</BODY>
</HTML>

PHP應用程序伺服器(本書的主要寫作目的)是緊密集成到Apache Web伺服器中的,可以在一個程序內同時調用它們兩個。當Web瀏覽器請求PHP Web頁面的時候,Web伺服器的PHP部分將被調用進行解釋。Web伺服器在請求的Web頁中尋找<?PHP . . . ?>標記,並按要求執行這些PHP代碼。
由PHP代碼生成的輸出將替代<?PHP . . . ?>標記。例如,當PHP代碼運行後,以前的Web頁面將變成如下所示的內容:

<HTML>
<HEAD><TITLE>Test</TITLE></HEAD>
<BODY>
<H1>Hello,world!</H1>
</BODY>
</HTML>

注意,所有的PHP代碼都消失了,僅僅留下了HTML語句。而由PHP代碼生成的HTML語句在上例中以黑體的形式顯示。

1.5 PHP語言是在Web伺服器端運行
當開發互聯網應用程序時,很重要的一點是要清楚應用程序是在哪一端運行的。PHP總是運行在伺服器端。不要嘲笑對這一點的強調。在以後考慮對應用程序某些特性進行規劃時,有的人可能就會在應用程序在哪裡運行的這個問題上搞錯,不要讓自己也成為這些人中的一個。
由於Java applets,ActiveX,或javascript 都是運行在客戶端的Web瀏覽器中的,因此PHP不能直接和它們進行比較。然而可以很容易的將這些語言與PHP相結合在一起,使用PHP可以很方便地生成所需要的任何HTML代碼,當然也就能激活Java applets和ActiveX控制項,還可以動態生成javascript語句。當對互聯網應用程序開發還很陌生的時候,這也許沒有什麼意義,但是在讀完這本書後,這一切就會變得十分清晰的了。
1.6 PHP無處不在
無處不在是常使用的充滿激情的詞語,到1999年7月,將有60萬左右的Web站點使用PHP,1999年夏天有關Linux和開放代碼運動的大發展很可能使PHP團體有突破性發展。可以在站點上看到它的發展趨勢圖表。
此外,PHP郵件列表每天能收到大約80個電子郵件,每個月能收到大約2500個電子郵件,這說明PHP是一個非常活躍的開發團體。使用PHP的商業公司有以下幾個,Mitsubishi Motors、Volvo、Red Hat Software、E*Trade、First USA Bank、the San Francisco Giants和San Diego Zoo等等。
1.7 PHP和C或Java相似嗎?
PHP程序和C程序有略微相似的地方,這是由於PHP來源於C、Perl和Java。一些對C語言來講比較麻煩的方面(如處理字元串的技術),由於採用了和Perl相近的技術,在PHP中就不再是麻煩了。PHP中也不包括Java中的一些面向對象特性。
PHP能很好地處理某些低級的任務,如果代碼需要運行的特別快,可以很方便的使用C為PHP程序編寫模塊。
1.8 PHP比ColdFusion、Active Server Page或Java Server Page更好嗎?
以流行的商議方式,我總是回答,「可以是,也可以不是」。
回答是,是由於它的費用(免費)以及可以通過郵件列表、IRC而在世界范圍內有廣泛的支持網路。同時PHP還在不斷地發展著,如果想要一個PHP現在沒有的特性時,請等待幾個月,就有人很快為PHP編程而加上此種特性。
回答不是,是由於商業軟體有比PHP更多的特性。例如,Allaire's ColdFusion有一個已證實可靠的搜索引擎組件。微軟的Active Server Page技術提供了與Outlook、電子郵件和工作組程序相結合的能力。Java Server Page讓使用者可以使用互聯網上的大量開放源碼模塊。
1.9 總結
對於遍及互聯網上的PHP,本章僅僅簡要提到了它的一些特性,本章也介紹了當設計互聯網應用程序時,PHP為什麼是最好的編程工具之一的原因。

⑹ 怎麼配置PHP編譯環境

PHP編譯環境配置:
打開editplus,點擊菜單欄「工具」,選擇下拉菜單的「配置用戶工具」,進入配置頁面;
點擊"添加工具" ,選擇"應用程序";
在輸入框中輸入
菜單文字:php
命令:<你本機php安裝目錄>\php.exe (例:D:\Program Files\PHP\php.exe)
參數:$(FilePath)
初始目錄 :$(FileDir)
動作選」捕捉輸出「
完成上述步驟後在d盤新建一個文件 hello.php
輸入代碼
<?php
echo "Hello,World!";
?>
點擊"工具"---"php" (我自己配置的快捷鍵是ctrl + 2,你也可以自由設置),在下方輸出框查看運行結果,顯示hello,world;
到此,整個php 編譯環境配置完畢。

⑺ PHP文件如何編輯

關於php文件怎麼打開的問題,我想對於一名站長來說並不陌生,老站長們都明白,從一個菜鳥到老鳥的過程,PHP的學習和了解是必須的,如果你不懂什麼是PHP,那麼很難混下去。
1.PHP文件是一個文本文件,如果您在本地是無法用瀏覽器讀取的,但是您可以使用Dreamweaver、Zend Studio 、eclipse或emeditor等軟體打開和編輯,如果您還不知道如何編輯PHP,可以參照烈火網的PHP開發手冊學習這個強大的WEB開發語言。
2.PHP在成功開發以後,可以在PHP環境(您可以直接PHP安裝包,然後參照IIS下PHP+mysql的安裝教程來搭建PHP環境,亦可以直接使用PHP套件,例如:xampp、APMServ等軟體)下瀏覽。

⑻ 求一點PHP對TXT文件和文章的操作教程

PHP教程.安裝PHP
安裝PHP
本章將按下列步驟編譯安裝以下軟體:
* Apache v.1.3.4 -- 世界上最流行的Web伺服器。
* gcc v.2.8.1 -- 來源於GNU的C和C++編譯器。
* MySQL v.3.22.16b-gamma -- 世界范圍內許多人使用的資料庫。
* PHP v.3.0.11 -- 本書所主要介紹的軟體。從http://www.php.net(或此站點的鏡象站點)直接下載可以得到較新的版本。本章的其它步驟仍然適用。
* expact -- 用於讀取和處理XML文檔的函數庫。
* phplib -- 用於進行會話管理的PHP函數庫。
* libiodbc -- 主要用於存取在非UNIX計算機中資料庫的ODBC函數庫。
* MyODBC -- PHP、iODBC和MySQL之間的函數庫。
即便如此,本章也並不是介紹編譯應用程序所需要的那些指令,而只是簡單的進行描述。總之,本書的重點是介紹PHP語言,而不是C語言。每一個應用程序的編譯對我來說都十分清楚,希望每個讀者也能沒有困難的進行編譯。假如你確實碰到了一些問題,可以在某個IRC頻道中有禮貌的詢問,或者可以嘗試使用新聞組(可以從http://www.dejanews.com訪問)得到幫助來解決問題。然而,最好的幫助還是來自http://www.php.net 上的PHP郵件列表。
在開始編譯過程之前,讓我們先討論一下如何從錯誤中恢復。在得到有關錯誤的幫助以後,可以採用以下的命令重新初始化源碼目錄:
* rm config.cache--幾乎所有的Linux應用程序都使用configure命令來檢查自己的系統,以尋找有關如何剪裁編譯過程的信息。檢查的結果將存貯在一個名為config.cache的文件中。如果移走此文件,將迫使配置程序從頭開始重新檢查系統。
* make distclean--所有的用C語言編寫的Linux應用程序都是用make程序編譯的。make程序會尋找每一個源文件,以確認是需要編譯還是已經編譯過的。make distclean命令可以「重置」所有的源程序,以便能重新編譯它們。
* make clean--有的應用程序不支持make distclean命令,而用make clean命令來代替。make clean命令「重置」所有的源程序,以便能重新編譯它們。
即使要安裝的一些應用程序不支持以上的每個命令,但是試一下這些命令也不會有什麼害處。

注意:Red Hat v5.2使用glibc庫。如果用戶從互聯網中下載或更新在本章中安裝的程序時,必須知道glibc的信息。使用者可以使用rpm -q glibc命令來查出已經安裝的glibc庫的版本號。在作者的系統中,使用rpm -q glibc命令將顯示glibc-2.0.7.29。

2.1 基本概念
也許讀者以前從沒有編譯過Linux應用程序,在這里介紹一些基本概念,以便在出現問題時有可能診斷出問題所在。
tar
tar,即tape archiver,它可以把幾個文件組合成一個文件,並可以選擇是否進行壓縮。這個命令過去通常用來進行備份,以便使數據存儲在磁帶中。當tar文件被壓縮時,它們有一個.gz的後綴;當tar文件沒有壓縮時,它們有一個.tar的後綴。
gcc
gcc 是GNU的C編譯器。它的工作是把人可以看懂的源代碼文件編譯成機器可以讀懂的目標文件。C源文件通常有.c的後綴名,目標文件通常有.o的後綴名。如果編譯工作不能正常進行,就是碰到了一個編譯期的錯誤,或者說:語法錯誤。在大多數情況下,不徹底的編譯通常是編譯器找不到一個或幾個包含文件而產生的。包含文件都有一個.h的擴展名,通常用來定義不同的系統信息,以及將多個不同的.c文件所共有的信息收集在一起。
make
make是一個常用的工具程序,是用來幫助進行編譯的。它的工作是用來只編譯那些還沒有編譯過的源文件。編譯.c文件將生成一個.o文件,如果.c文件比.o文件更新,也就是說到上次編譯之前,源文件被編輯過,那麼make將會重新編譯.c文件。make指令一般是尋找一個Makefile文件,在這個文件中包含有一個或多個能執行的目標,例如,make clean會告訴make執行清除目標。
ld
ld是GNU的鏈接程序。它的工作是把所有的目標文件和庫鏈接起來,創建一個單一的可執行文件。幸運的是,基本上不用手工運行這個程序,因為Makefile將會考慮到所有的編譯細節。
ldconfig
ldconfig會為在多個庫目錄(在/etc/ld.so.conf中指定)中尋找共享庫。共享庫常被多個的應用程序使用,它們的文件名中的某個地方有.so,例如,libqt.so.1.42是一個共享庫。在編譯完畢之後,有可能需要在/etc/ld.so.conf文件中增加一個目錄,並且運行ldconfig -v命令。
./configure
configure將會在計算機中尋找一些關鍵信息,例如,安裝的是哪一種C編譯器,包含文件在哪裡等等。然後,configure將會按照所用的計算機配置重新修改Makefile文件。應該使用./configure來在當前目錄下運行程序,以避免偶然運行$PATH環境變數中的目錄下的其他程序。
符號連接
符號連接允許使用者可以為一個已經現有的文件指定另一個不同的名字。例如,使用者有可能想把一個名為libqt.so.1.42的文件稱為libqt.so.1。符號連接基本上可以使用戶把一個文件復制到另一個不同的目錄下面,但事實上並沒有真正復制此文件。第二個文件實例只是簡單地指向第一個文件實例。使用符號連接至少可以有兩點好處,第一點是符號連接可以節省硬碟空間,少到只有16位元組;第二點有一點微妙,讓我們先看一下一個名為libqt.so.1且指向libqt.so.1.42的符號連接。如果需要升級到libqt.so.1.88,該怎麼辦呢?用戶只要簡單地改變符號連接,使libqt.so.1指向libqt.so.1.88,而非libqt.so.1.42即可。這意味著涉及到libqt.so.1的程序將自動地使用這個庫的新版本。按照慣例,符號連接常用於完整的發布版本號。換句話說,libqt.so.1.88和libqt.so.2.32應該有兩個不同的動態連接(分別為libqt.so.1和libqt.so.2)。
2.2 編譯前的准備工作
以下步驟將為系統做好編譯前的准備工作。
1. mkdir /usr/local/src -- 我選用/usr/local樹作為所安裝應用程序的根目錄。其他人可能選用/usr/opt、/opt或/var目錄。為了更方便的按照本章中的指令操作,請選用/usr/local目錄作為根目錄。當編譯完成以後,用戶可以把這些文件復制到不同的目錄中。

注意:為了能完成本章中的其它步驟,使用者必須具備root許可權。

2. cd /usr/local/src--轉到源文件目錄下。
3. 下載以下文件(可以從http://www.mtolive.com/phpbook站點下載),或者從本書隨機附帶的光碟中,復制這些文件到/usr/local/src目錄下:
. apache_1.3.4.tar.gz
. gcc-2.8.1.tar.gz
. mysql-3.22.16b-gamma.tar.gz
. php-3.0.11.tar.gz
. expat.tar.gz
. phplib.tar.gz
. libiodb-2.50.3
. myodbc-2.50.24-src
4. 使用tar命令解壓縮以上文件。tar的x選項為解開選項,v選項將在屏幕上顯示文檔中解出來的文件名,z選項為解壓縮選項,f選項用於在命令行中指定.tar文件名。
tar xvzf apache_1.3.4.tar.gz
tar xvzf gcc-2.8.1.tar.gz
tar xvzf mysql-3.22.16b-gamma.tar.gz
tar xvzf php-3.0.11.tar.gz
tar xvzf expat.tar.gz
tar xvzf phplib.tar.gz
5. gcc -v
確定系統中現有gcc的版本。如果你的系統不是v2.7.2.3,在下面的操作步驟中採用你的gcc版本號替換v.2.7.2.3。
6. cp `which gcc` /usr/bin/gcc-2.7.2.3
如果需要,把現有的gcc備份,以便以後使用。Linux的另一個優點是可以很容易在目錄下存儲一個程序的多個版本。
7. httpd -v
確定系統中的Apache的版本號。如果你的系統中的Apache不是v1.3.4,在下面的操作步驟中使用你的版本號替換v1.3.4。
8. mv `which httpd` /usr/sbin/httpd-1.3.4
如果需要,把現有的Apache備份,以便以後使用。

2.3 編譯C編譯器gcc
使用者應該安裝、編譯程序的第一個程序就是C編譯器。隨Red Hat v5.2附帶的C編譯器是gcc v2.7.2.3,由於它的版本比較低,以至於不能正確的編譯PHP。然而gcc v.2.7.3可以用來編譯版本較高的gcc v2.8.1。
編譯新版本的gcc需要執行:
1. cd /usr/local/src/gcc-2.8.1
轉到gcc的頂級目錄下。
2. ./configure -prefix=/usr/local/gcc
運行配置程序,強制安裝程序在後面的安裝過程中使用/usr/local/gcc作為gcc的安裝目錄。
3. make bootstrap LANGUAGES="c c++" BOOT_CFLAGS="-g -02"
編譯新的C和C++編譯器。
4. make install LANGUAGES="c c++" BOOT_CFLAGS="-g -02"
安裝新的C和C++編譯器。
5. mv /usr/local/gcc/bin/gcc /usr/local/gcc/bin/gcc-2.8.1
把新的gcc編譯器重新命名,使它的名字中含有版本號。
6. ln -s \
/usr/local/gcc/bin/gcc-2.8.1 \
/usr/bin/gcc-
給新編譯過的gcc可執行文件創建一個符號連接/usr/bin/gcc。
7. gcc -v
顯示gcc的版本號。如果編譯和安裝都正常的話,將顯示v.2.8.1。

2.3 編譯MySQL
現在來編譯MySQL。在編譯工作完成之後,就可以使用MySQL的應用程序來測試安裝。
1. cd /usr/src/mysql-3.22.16a-gamma
轉到MySQL的頂級目錄下。
2. ./configure --prefix=/usr/local/mysql
運行配置程序,強制安裝程序在後面的安裝過程中使用/usr/local/mysql作為MySQL的安裝目錄。
3. make
編譯MySQL。
4. make install
安裝MySQL。
5. echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf
將MySQL庫所在的目錄添加進配置文件中。這樣,當Linux啟動或者執行ldconfig命令時,將會在該配置文件中的目錄里搜索庫文件。
6. ldconfig -v | grep libmysqlclient
ldconfig命令能讀取/etc/ld.so.conf文件中列出的目錄,並對在那些目錄里找到的庫文件進行緩沖。grep命令在ldconfig命令的大量輸出結果中查找MySQL庫文件,並限定文本以類似下面方式進行顯示:
libmysqlclient.so.6 => libmysqlclient.so.6.0.0.
7. echo "/usr/local/mysql/bin/safe_mysqld > /dev/null &" >> /etc/rc.d/rc.local
將MySQL啟動指令添加到/etc/rc.d/rc.local文件中,這樣每次啟動Linux後就會自動運行MySQL。
8. ./scripts/mysql_install_db
初始化資料庫。
9. /usr/local/mysql/bin/safe_mysqld > /dev/null &
啟動MySQL伺服器作為後台程序,為了測試安裝,MySQL伺服器必須啟動。
10. ln -s \
/usr/local/mysql/bin/mysql \
/usr/bin/mysql
我比較喜歡在/usr/bin目錄下為安裝目錄建立符號鏈接。這一方法減少了PATH環境變數中的目錄數量,還可以將不希望其他人運行的MySQL工具程序隱藏起來,(例如,mysqladmin命令)。另一方法是將命令PATH="$PATH:/usr/local/mysql/bin"放在/etc/profile文件中。以上兩種方法都很可以採用。
11. ln -s\
/usr/local/mysql/bin/mysqlshow \
/usr/bin/mysqlshow
該指令是讓一般用戶都可以運行mysqlshow命令。

2.4 測試MySQL
在繼續Apache和PHP編譯之前,首先來測試MySQL的安裝是否成功。正式發布的MySQL帶有許多有用的工具,這里我們只使用mysql和mysqlshow命令來進行測試。(如果對資料庫不熟悉,請不用擔心,諸如用戶、表、記錄等資料庫的概念將在第六章「資料庫和SQL」中加以介紹。)
mysqladmin的作用是建立和刪除資料庫、檢查SQL的狀態,以及其他一些用途。首先,通過檢查版本號以確認是否已經正確安裝了MySQL:

>PATH="usr/local/mysql/bin:$PATH"
>mysqladmin version
Ver 7.8 Distrib 3.22.16a-gamma, for pc-linux-gun on i686 TCX Datakonsult AB, by Monty
Server version 3.22.16a-gamma
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /tmp/mysql.sock
Uptime: 2 hours 30 min 39 sec

Threads: 1 Questions: 7 Slow queries: 0
Opens: 6 Flush tables: 1 Open tables: 2

可以用以下命令觀看mysqladmin的所有功能.

mysqladmin --help | less

也許mysqlshow是更讓人激動的工具,它能夠列出資料庫、表和欄位名,如下所示:

清單2.1 mysqlshow--顯示資料庫,表和欄位名清單

Page 18(第13行)-19(倒數第10行) , 清單 2.1

最後要介紹的MySQL工具是mysql,這個程序將深入到MySQL的中心,並且可以使你可以立刻在Linux命令行提示下執行SQL語句。在shell模式下運行mysql。

Page 19(倒數第5行)-20(倒數第5行)

小心:設置密碼要使用password()函數。如果需要進一步了解,請查閱MySQL文檔。

小心:在系統進入正常工作模式的時候,請選用一個比「password」更好的root密碼。

2.5 編譯iODBC和MyODBC
iODBC是一個實現開放性資料庫互連(Open Database connectivity)協議的函數庫。它主要用於連接運行於Microsoft Windows的資料庫引擎。
1. cd /usr/local/src/libiodbc-2.50.3
轉到iODBC目錄。
2. ./configure \
--prefix=/usr/local/iodbc \
--with-iodbc-inidir=/usr/local/etc
運行配置程序,並強制設置iODBC為安裝到目錄/usr/local/iodbc下。此外,應確認odbc的初始化文件為/etc/odbc.ini。
3. make
4. make install
把庫文件復制到目錄/usr/local/iodbc/lib下,並且把包含文件復制到目錄/usr/local/iodbc/include下。
5. cd /usr/local/src/myodbc-2.50.24
轉到MyODBC目錄下。
6. ./configure \
--prefix=/usr/local/myodbc \
--with-mysql-sources=/usr/local/mysql-3.22.16a-gamma \
--with-odbc-ini=/etc/odbc.ini \
--with-iodbc=/usr/local/iodbc
運行MyODBC配置程序。
7. make
8. make install
把庫復制到目錄/usr/local/myodbc/lib下。
2.6 編譯PHP
編譯PHP比編譯以前的應用程序更復雜,這是因為編譯PHP事實上是expat、Apache和PHP的組合。編譯的結果將生成一個帶有PHP的Apache版本。為了要編譯PHP,可以採用以下步驟:
1. cd /usr/local/src/expat
轉到expat目錄。
2. make
編譯expat源文件。
3. 把以下命令加到Makefile文件中,必須保證在輸入ar和ralib之前使用的是Tab鍵。
libexpat.a: $(OBJS)
ar -rc $@ $(OBJS)
ranlib $@
4. make libexpat.a
把expat目標文件組合成庫文件。
5. mv libexpat.a /usr/local/lib
PHP配置文件在/usr/local/lib目錄下尋找libexpat.a文件。把libexpat.a文件移到PHP配置文件已知的目錄下,可以為以後的操作減少麻煩。
6. cd /usr/local/src/php-3.0.11
轉到PHP的頂級目錄下。
7. mkdir /usr/local/include/xml
確認/usr/local/include/xml目錄是存在的。
8. ln -s \
/usr/local/src/expat/xmltok/xmltok.h \
/usr/local/include/xml/xmltok.h
當能創建符號連接時,為什麼還要復制呢?
9. ln -s \
/usr/local/src/expat/xmlparse.h \
/usr/local/include/xml/xmlparse.h
這是PHP為了能夠正確地被編譯所需要的另一個包含文件。
10. cd /usr/local/src/apache_1.3.4
轉到Apache的頂級目錄下。
11. ./configure -prefix=/usr/local/apache
運行配置程序,強制設置Apache安裝目錄為/usr/local/apache。
12. cd /usr/local/src/php-3.0.11
轉到PHP的頂級目錄下。
13. ./configure \
--with-apache=../apache_1.3.4 \
--with-iodbc=/usr/local/iodbc \
--with-mysql=/usr/local/mysql \
--with-xml
運行配置程序,並且告訴配置程序支持Apache、MySQL和XML。
14. make
編譯PHP源文件。
15. make install
安裝已編譯的文件。PHP庫文件會被放在Apache的模塊目錄下,這樣可以在編譯Apache時能找到它們。
16. cd /usr/local/src/apache_1.3.4
轉到Apache的頂級目錄下。
17. ./configure \
--prefix=/usr/local/apache \
--active-mole=src/moles/php3/libphp3.a
再一次配置Apache,這次告訴Apache要載入PHP模塊。
18. make
編譯Apache源文件。
19. make install
安裝已編譯的文件。
20. mv \
/usr/local/apache/bin/httpd \
/usr/local/apache/bin/httpd-1.3.4
重新命名新創建的httpd可執行文件,這樣就能夠安裝多種版本。
21. ln -s \
/usr/local/apache/bin/httpd-1.3.4 \
/usr/sbin/httpd
建立一個指向新的可執行文件的符號鏈接。
22. httpd -v
證實可以訪問新的可執行文件。該命令的執行結果將顯示版本1.3.4,而且建立日期也應該正確無誤。
23. 編輯/usr/local/apache/conf/http.conf文件,搜索AddType並確認下列行未加註釋。
AddType application/x-httpd-php3 .phtml
AddType application/x-httpd-php3 .php3
AddType application/x-httpd-php3-source .phps
24. 接著編輯/usr/local/apache/conf/http.conf文件,搜索DirectoryIndex並將index.php3放在行尾。
25. 創建一個名為/usr/local/local/php3.ini的文件,該文件應包含如下的命令行:
include_path=.:/usr/local/apache/php/
auto_prepend_file=/usr/local/apache/php/prepend.php3
track_vars = on
magic_quotes_gpc = on
sendmail_path /usr/sbin/sendmail -t
26. ln -s \
/usr/local/src/php-3.0.11/doc/manual.html \
/usr/local/src/php-3.0.11/doc/index.html
建立一個符號鏈接,這樣絕大多數Web瀏覽器就會正確地自動顯示PHP文件起始頁。
27. ln -s \
/usr/local/src/php-3.0.11/doc \
/usr/local/apache/htdocs/phpdocs
建立一個符號鏈接,這樣就可以通過http://localhost/phpdocs/, 來訪問PHP文檔。
28. 創建一個叫做/usr/local/apache/htdocs/robots.txt的文件,這樣就可避免搜索引擎為PHPLIB,phpMyAdmin和PHP文件建立索引,新創建的文件應包括如下設置行:
#robots.txt for (hostname)
User-agent *
Disallow: /phpdocs/
Disallow: /php/
Disallow:/phpMyAdmin/

2.7 安裝PHPLIB
在閱讀第15章「處理並發的訪問」之前,應先安裝PHPLIB,可以按照下列步驟進行安裝:
1. 以root用戶或其他任何可以在/usr/local/apache目錄下寫文件的用戶注冊。
2. cd /usr/local/apache/
在開始下載文件之前,進入到Web伺服器的頂級目錄下。
3. 從如下Web網址下載最新版本的文件,注意gz後綴的文件名,以免它的文件名phplib.tar.gz被改動。
http://phplib.shonline.de/
4. tar xv2f phplib.tar.gz
解壓縮PHPLIB模塊。
5. 編輯/usr/local/lib/php3.ini文件,應包括下列設置內容:

include_path=.:/usr/local/apache/phplib-6.1/php
auto_prepend_file = /usr/local/apache/phplib-
6.1/php/prepend.php3
track_vars = on
magic_quotes_gpc = on
sendmail_path /usr/sbin/sendmail -t

6. 建立一個名為poe_sessions的mysql資料庫。我一般使用phpMyAdmin,如果願意,也可以使用SQL命令創建資料庫。
7. cd /usr/local/apache/phplib-6.1/stuff
進入建表目錄下。
8. mysql php_book --user=root --password <
create_database.mysql
創建PHPLIB所需要的資料庫表。
9. 使用以下值在mysql資料庫表中增加一條新記錄:

host: %
password: <-- no password.
select_priv: Yes
insert_priv: Yes
update_priv: Yes
delete_priv: Yes
for users named "kris","user01",and "user02".

注意:也可以使用如下SQL語句:

INSERT INTO
user
(
Host
,User
,Password
,Select_priv
,Insert_priv
,Update_priv
,Delete_priv
)
VALUES (
'%'
, 'kris'
, ''
, 'Y', 'Y', 'Y', 'Y'
)

10. 使用以下值在mysql資料庫的db表中增加一條新記錄:

host: %
db: poe_sessions
select_priv: Yes
insert_priv: Yes
update_priv: Yes
delete_priv: Yes
for users named "kris","user01",and "user03".

注意:也可以使用如下SQL程序。

INSERT INTO
db
(
Host
,Db
,User
,Select_priv
,Insert_priv
,Update_priv
,Delete_priv
)
VALUES (
'%'
, 'poe_sessions '
, 'kris'
, 'Y', 'Y', 'Y', 'Y'
)

11. /usr/local/mysql/bin/mysqladmin -u root -p reload
重新裝載MySQL許可權表。
12. 在php_book資料庫中創建兩個PHPLIB已認證的用戶(user01和user02),可以使用如下SQL語句:

INSERT INTO
auto_user
(
uid
,username
,password
,perms
) VALUES (
''
,'user01'
,'test'
,'admin'
)

INSERT INTO
auth_user
(
uid
,username
,password
,perms
) VALUES (
''
,'user02'
,'test'
,'admin'
)

13. mv\ /use/local/apache/phplib-6.1/pages \
/use/local/apach/htdocs
將演示子目錄置於Web伺服器的根目錄下,這樣就可以用瀏覽器訪問它。
14. 編輯文本文件/usr/local/apache/htdocs/robots.txt,使它包括如下內容:

Disallow: /phplib/

15. 使用Web瀏覽器訪問http://localhost/phplib/。將會看到如圖2.1所示頁面。

Page 29 圖2.1

圖2.1 重新裝載兩次以後出現的PHPLIB演示頁面

2.8 測試Linux環境下的ODBC
對所裝軟體進行基本測試是很重要的,特別是需要手工編輯配置文件時。如下的測試可確保你的MySQL驅動程序運行正常,並且編譯的iODBC庫文件也是正確無誤的。
1. 使用清單2.1所列的內容,建立一個名為/usr/local/etc/odbc.ini的文件。

清單 2.2 /usr/local/etc/odbc.ini- 系統ODBC 配置文件
;
;odbc.ini
;

[ODBC Data Sources]
mysql = mysql

[php_book]
driver = /usr/local/myodbc/lib/libmyodbc.so
host = localhost
database = mysql
user = root

2. cd /usr/local/src/libiodbc-2.50.3/samples
3. ./odbctest
運行ODBC測試程序。
4. DSN=mysql;PWD=password
告訴測試程序要訪問的數據源。
5. select host,user from user
在提示符下執行一個SQL語句,如果有回應,說明iODBC和MySQL已經可以使用了。
現在,在計算機中已經安裝好了ODBC,由於它的安裝步驟不太清晰而且文檔又很少,所以本章中講述了其安裝和測試指令,然而鑒於ODBC主要是一項Microsoft技術,且很少在Linux中用到,所以這里是本書中最後一次有關介紹。
2.9 總結:
本章講述了如何獲取PHP,及在計算機中進行安裝所需要的步驟,編譯了內建PHP的特定版本Apache 伺服器。同時,還安裝了將在第15章「中場四:處理並發訪問」中用所到的PHPLIB。

閱讀全文

與金蝶php如何編譯文字相關的資料

熱點內容
java回車轉義字元 瀏覽:757
linux啟動級別修改 瀏覽:121
單片機採集交流方法 瀏覽:283
程序員的平凡理想 瀏覽:236
floyd最短路徑演算法c 瀏覽:383
新湖app在哪裡下載 瀏覽:704
計算機圖形學涉及的演算法 瀏覽:370
阿里雲linux一鍵web 瀏覽:26
彈性雲伺服器注冊 瀏覽:170
垃圾程序員寫出垃圾代碼 瀏覽:761
帝國時代java下載 瀏覽:54
數據結構的經典演算法題 瀏覽:197
逍遙安卓多開管理器是干什麼的 瀏覽:917
程序員收玉米一天多少錢 瀏覽:358
程序員很可愛根據哪本小說改編的 瀏覽:987
游戲舊版安卓怎麼玩 瀏覽:266
冗餘單片機 瀏覽:852
cad抽殼命令怎麼用 瀏覽:30
伺服器第一地址怎麼改 瀏覽:499
單片機最小系統電路設計流程圖 瀏覽:670