導航:首頁 > 編程語言 > php網站例子

php網站例子

發布時間:2023-07-26 17:19:21

A. 誰能給個php webservice的例子

Web Service為了異構系統的通信而產生的,它基本的思想就是使用基於XML的HTTP的遠程調用提供一種標準的機制,而省去建立一種新協議的需求。目前進行Web Service通信有兩種協議標准,一種是XML-RPC,另外一種是SOAP。XML-RPC比較簡單,出現時間比較早,SOAP比較復雜,主要是一些需要穩定、健壯、安全並且復雜交互的時候使用。

PHP中集成了XML-RPC和SOAP兩種協議的訪問,都是集中在xmlrpc擴展當中。另外,在PHP的PEAR中,不管是PHP 4還是PHP 5,都已經默認集成了XML-RPC擴展,而且該擴展跟xmlrpc擴展無關,能夠獨立實現XML-RPC的協議交互,如果沒有xmlrpc擴展,建議使用PEAR::XML-RPC擴展。

說的再多都是虛的,下面一個例子說明一切。

首先構造webservice 的服務端:

在服務端,我定義的函數是get( "helloworld" );//hello是傳入的參數

<?php
/**
* 函數:提供給RPC客戶端調用的函數
* 參數:
* $method 客戶端需要調用的函數
* $params 客戶端需要調用的函數的參數數組
* 返回:返回指定調用結果
*/
function rpc_server_func($method, $params) {
$parameter = $params[0];//傳入的函數名稱

$parameter1 = $params[1];//傳入的參數
if ($parameter == "get")
{
$return = "This data by get method".$parameter1 ;
}
else
{
$return = "Not specify method or params";
}
return $return;
}

//產生一個XML-RPC的伺服器端
$xmlrpc_server = xmlrpc_server_create();

//注冊一個伺服器端調用的方法rpc_server,實際指向的是rpc_server_func函數
xmlrpc_server_register_method($xmlrpc_server, "rpc_server", "rpc_server_func");

//接受客戶端POST過來的XML數據
$request = $HTTP_RAW_POST_DATA;

//執行調用客戶端的XML請求後獲取執行結果
$xmlrpc_response = xmlrpc_server_call_method($xmlrpc_server, $request, null);

//把函數處理後的結果XML進行輸出
header("Content-Type: text/xml");
echo $xmlrpc_response;

//銷毀XML-RPC伺服器端資源
xmlrpc_server_destroy($xmlrpc_server);
?>

用php來訪問所定義的webservice的服務端。

<?php
/**
* 函數:提供給客戶端進行連接XML-RPC伺服器端的函數
* 參數:
* $host 需要連接的主機
* $port 連接主機的埠
* $rpc_server XML-RPC伺服器端文件
* $request 封裝的XML請求信息
* 返回:連接成功成功返回由伺服器端返回的XML信息,失敗返回false
*/
function write_file( $string )
{
$fp = fopen( "xml.log","w" );
fprintf( $fp, "%s\n", $string );
fclose( $fp );
}
function rpc_client_call($host, $port, $rpc_server, $request) {

//打開指定的伺服器端
$fp = fsockopen($host, $port);
//echo $fp."
";
//構造需要進行通信的XML-RPC伺服器端的查詢POST請求信息
$query = "POST $rpc_server HTTP/1.1\r\nUser_Agent: XML-RPC Client\r\nHost: ".$host."\r\nContent-Type: text/xml\r\nContent-Length: ".strlen($request)."\r\n\r\n".$request."\r\n";
//echo $query."
";

//把構造好的HTTP協議發送給伺服器,失敗返回false
if (,fputs($fp, $query, strlen($query)))
{
$errstr = "Write error";
echo $errstr."
";
return false;
}

//獲取從伺服器端返回的所有信息,包括HTTP頭和XML信息
$contents = "";
while (,feof($fp))
{
$contents .= fgets($fp);
}

//關閉連接資源後返回獲取的內容
fclose($fp);
return $contents;
}

//構造連接RPC伺服器端的信息
$host = "localhost";
$port = 80;
$rpc_server = "/phpserv.php";//注意 這里一定要有/,切忌。

//把需要發送的XML請求進行編碼成XML,需要調用的方法是rpc_server,參數是get
$request = xmlrpc_encode_request("rpc_server", array( "get", "helloworld"));
//echo $request;
//調用rpc_client_call函數把所有請求發送給XML-RPC伺服器端後獲取信息
$response = rpc_client_call($host, $port, $rpc_server, $request);
write_file ( $response );
//echo "aaa".$response."xxx"."
";
//分析從伺服器端返回的XML,去掉HTTP頭信息,並且把XML轉為PHP能識別的字元串
$split = "";
//echo "split=".$split."
";
$xml = explode($split, $response);
$xml = $split . array_pop($xml);
$response = xmlrpc_decode($xml);

/*輸出從RPC伺服器端獲取的信息*/
print_r($response);

?>

例子都有了,其他的就是照搬咯。 兄弟 ,望才難。

B. 怎樣用PHP來給網頁做導航欄

譯者注 本文原名《Site Navigation with PHP》 原文詳述了如何用PHP編程來做出效果理想的網頁導航條 本文只選譯了其中的部分文章 所選取的部分是文章精髓之所在 只要大家能弄懂這部分內容就可以用同樣的原理 思想做出我們需要的效果來 希望給讀者能起到拋磚引玉的作用 本肢拆文只需要讀者具備PHP HTML的初步知識就可以基本讀懂了

譯 文 如大家所知PHP對於用資料庫驅動的網站(making database driven sites)來講可謂功能強大 可是我們是否可以用它來做點其他事情呢?PHP給了我們所有我們期望的喊姿工具 for與while的循環結構 數學運算等等 還可以通過兩種方式來引用文件 直接引用或向伺服器提出申請 其實何止這些 讓我們來看一個如何用它來做導航條的例子 完整的原代碼 <!—— This <? is how you indicate the start of a block of PHP code ——> <?php # and this # makes this a PHP ment

$full_path = getenv( REQUEST_URI )

$root = dirname($full_path) $page_file = basename($full_path) $page_num = substr($page_file strrpos($page_file _ ) + strpos($page_file l ) (strrpos($page_file _ ) + ))

$partial_path = substr($page_file strrpos($page_file _ ))

$prev_page_file = $partial_path _ (string)($page_num ) l $next_page_file = $partial_path _ (string)($page_num+ ) l

$prev_exists = file_exists($prev_page_file) $next_exists = file_exists($next_page_file)

if ($prev_exists)

{ print <a $root/$prev_page_file >previous</a> if ($next_exists)

{ print | } if ($next_exists)

{ print <a $root/$next_page_file >next</a> }

?>//原程序完

代碼分析 OK! 前面做了足夠的鋪墊工作 現在讓我們來看看如何來用PHP來完成這項工作

<!—— This <? is how you indicate the start of a block of PHP code ——> <?php # and this # makes this a PHP ment

$full_path = getenv( REQUEST_URI )

$root = dirname($full_path) $page_file = basename($full_path)

/* PHP函數getenv()用來取得環境變數的值 REQUEST_URI的值是緊跟在主機名後的部分URL 假如URL是 那它的值就為/dinner/l 現在我們將得到的那部分URL放在變數$full_path中 再用dirname()函數來從URL中抓取文件目錄 用basename()函數取得文件名 用上面的例子來講dirname()返回值 /dinner/ basename()返回 l 接下來的部分相對有些技巧 假如我們的文件名以story_x的格式命名 其中x代表頁碼 我們需要從中將我們使用的頁碼抽出來 當然文件名不一定只有一位數字的模式或只有一個下劃線 它可以是l 同樣它還可以叫做l甚至是l 而我們真正想要的就是位於最後一鄭飢絕個 _ 和 之間的東東 可採用如下方法 */ $page_num = substr($page_file strrpos($page_file _ ) + strpos($page_file l ) (strrpos($page_file _ ) + )) /* substr($string $start [$length] )函數給了我們字元串$string中從$start開始 長為$length或到末尾的字串(方括弧中的參數是可選項 如果省略$length substr就會返回給我們從$start開始直到字元串末尾的字元串) 正如每一個優秀的C程序員告訴你的那樣 代表字元串開始的位置開始的數字是 而不是

函數strrpos($string $what)告訴我們字元串$what在變數$string中最後一次出現的位置 我們可以通過它找出文件名中最後一個下劃線的位置在哪 同理 接著的strpos($string $what)告訴我們 首次出現的位置 我們通過運用這三個函數取得在最後一個 _ 和 之間的數字(代碼中的strpos()+ 代表越過 _ 自己)

剩下的部分很簡單 首先為上頁和下頁構造文件名 */ $partial_path = substr($page_file strrpos($page_file _ ))

$prev_page_file = $partial_path _ (string)($page_num ) l $next_page_file = $partial_path _ (string)($page_num+ ) l

/*(string)($page_num+ )將數學運算$page_num+ 的結果轉化為字元串類型 這樣就可以用來與其他字串最終連接成為我們需要的文件名

*/ /*現在檢查文件是否存在(這段代碼假設所有的文件都位於同樣的目錄下) 並最終給出構成頁面導航欄的HTML代碼

*/ $prev_exists = file_exists($prev_page_file) $next_exists = file_exists($next_page_file)

if ($prev_exists)

{ print <a $root/$prev_page_file >previous</a> if ($next_exists)

{ print | } if ($next_exists)

{ print <a $root/$next_page_file >next</a> }

lishixin/Article/program/PHP/201311/20771

C. 如何用php輸出一個網址的內容

一種是利用模板技術,另一種是用ob系列函數。兩種方法,看起來都差不多,但是實際上,卻是不同的。
第一種:利用模板
目前PHP的模板可以說是很多了,有功能強大的smarty,還有簡單易用的smart template等。
它們每一種模板,都有一個獲取輸出內容的函數。
我們生成靜態頁面的方法,就是利用了這個函數。
用這個方法的優點是,代碼比較清晰,可讀性好。
這里我用smarty做例子,說明如何生成靜態頁
<?php
require('smarty/Smarty.class.php');
$t = new Smarty;
$t->assign("title","Hello World!");
$content = $t->fetch("templates/index.htm");
//這里的 fetch() 就是獲取輸出內容的函數,現在$content變數裡面,就是要顯示的內容了
$fp = fopen("archives/2005/05/19/0001.html", "w");
fwrite($fp, $content);
fclose($fp);
?>

D. 怎麼用php做網站 如何在HTML中利用php

樓上說的很對,但只是理論對你應該沒什麼幫助!我是做php開發的程序員。
首先你要明確的是,html是前端,負責製作網站的前端頁面,所謂的前端就是你現在看到的網路知道的頁面,這就是前端html+css+js寫出來的。
而php是一個網站的後端,也就是實現我們能夠在網路知道
裡面發表問題,回答問題等一系列功能的後端語言。
從你問的問題能看出你應該是個初學者,我給你舉個實例的代碼例子:
在HTML中利用php
1234567891011121314<!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><title>php彈出提示內容</title></head><body>//html頁面中使用php代碼調用js提供的alert彈窗<?phpecho"<script>alert('我是內嵌在html裡面的php代碼')</script>";?></body></html>
下面這是實際的運行效果圖:
php代碼可以混合在html中,html也可以混合寫到php中。當然想要運行上面我給的代碼,你首先需要先在自己電腦搭建本地的web伺服器,然後才可以運行php後綴的文件。
純手敲,有更多問題可以直接追問,或是到我的工作室QQ群(540144097)向我提問,同為開發者,理應相互幫助,有問必答!望採納....

E. 如何做一個簡單PHP網站

1.首先你要做什麼類型的網站
2.你想要什麼功能
3把你想要的功能寫下來
4先把資料庫建立起來,根據功能創建表
5.通過軟體把你的網站的前台的頁面設計出來
6.然後寫處理頁面請求的方法function
7.最簡單的就是登陸和注冊了.

閱讀全文

與php網站例子相關的資料

熱點內容
改解壓格式 瀏覽:268
仿社交app源碼 瀏覽:289
解壓粘液模擬器英文版 瀏覽:671
看高鐵票多少錢用什麼app看 瀏覽:884
java介面返回值 瀏覽:89
奇跡文學APP為什麼不能用了 瀏覽:1000
怎麼用電腦玩手機版的我的世界伺服器 瀏覽:230
linux設備許可權 瀏覽:950
pdf轉曲軟體 瀏覽:149
雲伺服器怎麼做nas 瀏覽:457
有什麼可以提示快遞的app 瀏覽:311
什麼app的主題都是免費的 瀏覽:1002
se01加密路線和普通路線放 瀏覽:908
怎麼用安卓系統手機測量長度 瀏覽:46
回調突破主圖源碼 瀏覽:238
mc生存都市伺服器地址大全 瀏覽:92
unix網路編程環境搭建 瀏覽:963
pythonsocket高並發 瀏覽:257
python開發windowsgui 瀏覽:619
25減9的借位演算法 瀏覽:269