當前位置:首頁 » 編程軟體 » 金蝶php如何編譯

金蝶php如何編譯

發布時間: 2023-06-27 07:15:26

1. php也需要編譯

php是一種腳本語言,不能先編譯保存下來再執行,只在被調用時進行解釋或編譯。
PHP既是語言也是軟體
php語言腳本依賴php軟體解釋
mysql
是一種資料庫軟體
apache
是一種web伺服器軟體
?
$a
=
"PHP
4"
;
$b
=
"功能強大"
;
echo
$a.$b;
?
PHP
4功能強大.

2. 如何運行PHP

分類: 電腦/網路 >> 程序設計 >> 其他編程語言
問題描述:

我們要在電腦上運運ASP文件 只要裝IIS就可以。

哪要運行PHP文件呢。該怎麼辦!~

解析:

如何安裝運行php

1. Unix/Windows: 我的php.ini 文件應該放在哪?

UNIX下默認它應該放在 /usr/local/lib 目錄下。 這是它的 /lib. 很多人會在編譯時改變它,使用--with-config-file-path 標志。 例如, 你可以這樣設它: --with-config-file-path=/etc

然後你可以復制源程序包里的 php.ini-dist 到 /etc/php.ini ,編輯它滿足你的本地化需求。

Windows下 php.ini默認的路徑是 Windows 系統目錄. 如果你在使用 Apache webserver, php.ini 則最先在 Apaches 安裝目錄下被查找, 例如: c:\program files\apache group\apache. 這樣你可以有不同的 php.ini 對應不同版本的 Apache(同一台機器上)。

更多細節請查閱 configuration file.

2. Unix: 我安裝了 PHP, 但我每次載入一個文檔, 會得到下面的消息: Document Contains No Data ! 怎麼回事?

這可能是因為你的 PHP 發生了core-mping錯誤。 查找你的伺服器錯誤日誌文件,看看是否屬於這種情況。 然後報告這個錯誤。如果你知道怎樣使用 gdb ,你可以提供一個 backtrace 在你的錯誤報告里。這將會對開發人員解決 這個問題有很大幫助。如果你是在將PHP作為Apache模塊使用,那麼請按下面的步驟做:

停止 d 進程

gdb d

停止 d 進程

> run -X -f /path/to/d.conf

瀏覽你剛才出錯的 URL

> run -X -f /path/to/d.conf

如果你還有 core mp, gdb 現在會通知你

打入: bt

在你的 bug report里應該包含backtrace 。 這些會被發往 bugs.php/

如果你的腳本使用了正則表達式函數 (ereg() and friends), 你應該確保你編譯 PHP 和 Apache 用的是同一個正則表達式包。 在 PHP 和 Apache 1.3.x 這個過程是自動進行的。

3. Unix: 我使用 RPMS 安裝 PHP , 但Apache 不支持 PHP頁面! 怎麼辦?

假設你安裝了 Apache 和 PHP(從 RPM ) , 你需要反注釋或者增加一些行在你的 .conf 文件里: # Extra MolesAddMole mod_php.cAddMole mod_php3.cAddMole mod_perl.c# Extra MolesLoadMole php_mole moles/mod_php.soLoadMole php3_mole moles/libphp3.so /* for PHP 3 */LoadMole php4_mole moles/libphp4.so /* for PHP 4 */LoadMole perl_mole moles/libperl.so

And add: AddType application/x-d-php3 .php3 /* for PHP 3 */AddType application/x-d-php .php /* for PHP 4 */

... 到全局域里, 或者到你想要的 支持PHP的虛擬域里。

4. 我使用 RPMS 安裝 PHP 3 , 但是它沒有我需要的資料庫選項支持! 我該怎麼辦?

因為 PHP 3 內建支持的關系, 編譯一個完整的可適於所有應用的 PHP RPM是相當困難的。 在 PHP 4有談到這點。 對 PHP 3, 我們只好建議你使用INSTALL.REDHAT (在 PHP包里)描述的機制。 如果你一定要使用 RPM 版的 PHP 3, 讀...

RPM 包管理器設置 RPMS 簡單的安裝,不帶資料庫支持 and 因為RPMS 使用 /usr/ 而不是標準的 /usr/local/ 目錄存放文件. 你需要告訴 RPM 文件你要支持哪種資料庫以及它們的最上級目錄的位置。

下面的例子將解釋在Apache模式下怎樣支持通行的資料庫Mysql.

當然所有的這些可以稍作修改,以支持其它的PHP支持的資料庫。我們假設你安裝了 MySQL and Apache ,完全是用 RPMS 安裝的。

首先,移去 mod_php3 : rpm -e mod_php3

然後取得rpm包並安裝, 不是 --重編譯 rpm -Uvh mod_php3-3.0.5-2.src.rpm

編輯/usr/src/redhat/SPECS/mod_php3.spec 文件

在 %build 一節里增加你想要的資料庫支持, 以及路徑信息。

對 MySQL 你應該增加: --with-mysql=/usr \

%build 節看起來象: ./configure --prefix=/usr \ --with-apxs=/usr/ *** in/apxs \ --with-config-file-path=/usr/lib \ --enable-debug=no \ --enable-safe-mode \ --with-exec-dir=/usr/bin \ --with-mysql=/usr \ --with-system-regex

改動完成後,象下面這樣重編rpm : rpm -bb /usr/src/redhat/SPECS/mod_php3.spec

Then install the rpm rpm -ivh /usr/src/redhat/RPMS/i386/mod_php3-3.0.5-2.i386.rpm

重啟 Apache,你已經得到了rpm下的Mysq

l的支持。 注意到這種做法比你重新得到一個 PHP 3 的tarball 代碼,按照 INSTALL.REDHAT 的指引一步一步做要容易得多。

5. Unix: 我用 FrontPage 擴展包對Apache打了補丁, 忽然 PHP 停止工作。 是PHP 和 Apache FrontPage 包不兼容嗎 ?

不是, PHP 和 FrontPage擴展包運行得很好.。問題是FrontPage 包修改了幾個Apache 結構參數,而PHP要用到它們.在FrontPage擴展包被打上後, 重新編譯 PHP (使用 make clean ; make ) ,會解決這個問題。

6. Unix/Windows: 我安裝了PHP,但在瀏覽器里看我的PHP頁面時,空白一片。

在瀏覽器里用 查看源文件 看你的腳本,你可能會發現你看到的是源程序。 這表示 web server 並沒有送腳本到PHP去執行。肯定是伺服器配置上哪兒出了錯。 仔細檢查PHP安裝的 server 配置。

7. Unix/Windows: 我安裝了PHP,但在瀏覽器里看我的 PHP頁面時,我得到一個 server 500 error。

這是伺服器在運行 PHP 時發生了錯誤。 為了看到可讀的錯誤信息,在命令行,改變目錄到 (php.exe Windows)所在目錄, 運行 php -i. 如果有任何問題,詳細的錯誤信息就顯示出來了,它會告訴你下一步該做什麼。 如果你得到滿屏的HTML代碼 (phpinfo() 函數的輸出), 那麼PHP工作正常,這個錯誤就是由於伺服器配置引發的,應該仔細檢查。

8. 某些操作系統: 我安裝PHP沒出錯,可是我啟動Apache時,得到一個 undefined symbol errors: [mybox:user /src/php4] root# apachectl configtest apachectl: /usr/local/apache/bin/d Undefined symbols: _press _unpress

這個問題其實與 PHP 無關, 而與 MySQL 客戶端庫有關。 --with-zlib,有些操作系統需要,而有些不需要。MySQL FAQ已經講述了這個問題。

9. Windows: 我安裝了PHP,但在瀏覽器里看我的PHP頁面, 得到如下錯誤: cgi error: The specified CGI application mi *** ehaved by not returning a plete set of HTTP headers. The headers it did return are:

這是 PHP 根本沒有產生任何輸出。 為了看到可讀的錯誤信息,在命令行,改變目錄到 (php.exe Windows)所在目錄, 運行 php -i. 如果有任何問題,詳細的錯誤信息就顯示出來了,它會告訴你下一步該做什麼。 如果你得到滿屏的HTML代碼 (phpinfo() 函數的輸出), 那麼PHP工作正常。

一旦PHP在命令行模式下工作,再看看你的腳本程序, 它還是失敗,可能是因為以下原因:

你的PHP腳本的許可權許可。 php.exe, php4ts.dll, php.ini 或者任何你可能裝入的PHP文件,它樣都必須能被匿名 inter 用戶 ISUR_ 訪問

腳本文件根本不存在(或者不是你認為的位置。)請注意在IIS里,你能夠阻塞這個錯誤,做法是在設置腳本映射目錄時, 選上 check file exists 框。這樣如果腳本不存在,伺服器會返回一個404錯誤。 這樣做也有其它的一些好處, 就是IIS僅為你做經過授權的操作。

10. Windows: 我嚴格按照install的要求做,可是還是不能讓我的php在IIS下工作。

確定任何想要運行PHP的用戶有操作php.exe的許可權! IIS 使用匿名的inter用戶,它是在IIS安裝時系統自動增加的。 這個用戶需要操作 php.exe的許可權. 還有,任何需要授權的用戶也必須有訪問 php.exe的許可權。 在 IIS4下,你要告訴它PHP是一個腳本引擎。

3. PHP源碼如何編譯為jar文件

可以使用 php2java 工具先轉成 java 代碼,再編譯打包成 jar.

4. 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等軟體)下瀏覽。

5. php如何反編譯

PHP沒有編譯和反編譯之說,是解釋型的語言,你如果看到的代碼有兩種可能,一種是用eval來執行的用簡單base_encode之類函數加密的語句,反解密出來就可以了。
還有一種可能是使用ZendGuard或者其它加密代碼的工具進行加密出來後的代碼,你可以找找具體是哪種情況,然後找相應的解密工作就可以了。
PS:大多數軟體都是收費的。

6. 編譯安裝php,怎麼生成apxs

讓Apache伺服器能夠支持PHP。 如果編譯安裝時不加--options --with -apxs2參數,即使你的電腦上安裝了Apache和PHP,通過Apache是不能訪問PHP頁面的,因為Apache本身只支持靜態html頁面。加入此參數,則能通過Apache訪問PHP頁面了。

7. PHP緩存技術的PHP編譯緩存

目前最常見的PHP編譯緩存工具有:APC,Accelerator,xcache(國產)等。
PHP是一種解釋型語言,在PHP語言執行代碼的時候,需要下面兩步:
1、編譯過程。PHP讀取文件,並編譯該文件,然後生成能夠在Zend Engine虛擬機上執行的中間碼。
2、執行過程。PHP直接執行中間碼。
以下兩種情況,會導致PHP運行程序代碼效率低下:
1、即使PHP代碼文件沒有發生改變,也會被PHP重新編譯。
2、如有引用文件,PHP也要花費時間重新編譯這些被引用的文件。
因此,需要PHP編譯緩存工具對PHP程序的編譯結果做緩存處理。這樣,PHP程序只要編譯一次,就不要重新再做無意義的編譯了。

8. 怎樣把PHP代碼編譯成DLL文件

在大型機數據集中每一行就代表一條記錄
那麼就可以不用分別讀取,並且我還真的沒有試過分別讀取
先假定你的輸入文件記錄長度為80
你可以直接把輸入文件定義為
FD FILE1
........
.
01 INPUT-REC PIC X(80).
這樣讀取進來
然後就可以通過
UNSTRING INPUT-REC
DELIMITED BY SPACE
INTO 變數。
這樣來實現讀取。
而第一行為了轉化為數字,可用FUNCTION NUMVAL(變數)
這樣把字元形式轉化為數字
這樣就可可以了
如果還不懂就問吧

補充:數據集長度的大小不確定
在大型機裡面數據集是以記錄為單位來存放的,一行就是一個記錄
如果是定長,比如80,那麼在FD 下INPUT-REC PIC X(80)
變長要復雜點
那麼不管一行是多少,比如記錄長度是80,格式是fb
那麼第一行是9(5),就是存放的5個數字
比如 12345----------數字後面就是空格
其他行是X(6)那麼
比如ABCDEG------------字元後面也是空格
我們把輸入文件對應的記錄定義為
INPUT-REC PIC X(80)
那麼我們想要取得前面的東西就可以
UNSTRING INPUT-REC
DELIMITED BY SPACE
INTO 變數
要不你把題目描述具體些,寫出來,我來把代碼寫一下

9. 如何重新編譯PHP使其支持mysqli

添加擴展的基本步驟:
1、進入PHP源代碼目錄:# cd /tmp/php-5.2.14/
2、再進入要添加的mysqli擴展源碼目錄:# cd ext/mysqli/
2、調用已經編譯好的php裡面的phpize:# /usr/local/php/bin/phpize
3、然後configure:# ./configure --with-php-config=/usr/local/php/bin/php-config --with-mysqli=/usr/local/MySQL/bin/mysql_config
(/usr/local/mysql 為mysql的安裝目錄)
4、make && make install
5、編譯之後,自動把mysqli.so放到了默認的php擴展目錄下,我的為 /usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/
(phpinfo可查看或者執行命令/usr/local/php/bin/php-config --extension-dir )
再修改php.ini 找到extension_dir 默認路徑為 extension_dir="./" 我修改後才啟動載入的
在下面添加extension = "mysqli.so" 保存即可

熱點內容
官方源碼 發布:2025-02-08 14:09:25 瀏覽:436
python過濾器 發布:2025-02-08 14:05:06 瀏覽:617
火山幣演算法 發布:2025-02-08 14:04:49 瀏覽:669
jffs2解壓 發布:2025-02-08 13:55:15 瀏覽:388
如何向伺服器發送大數據包 發布:2025-02-08 13:55:12 瀏覽:662
伺服器pop地址是什麼 發布:2025-02-08 13:39:21 瀏覽:386
網站訪問計數器 發布:2025-02-08 13:32:07 瀏覽:6
釣魚的腥怎麼配置 發布:2025-02-08 13:22:57 瀏覽:756
php數組的引用 發布:2025-02-08 13:22:54 瀏覽:96
致遠a6伺服器地址在哪裡看 發布:2025-02-08 13:22:06 瀏覽:134