c與本地php交換數(shù)據(jù) php之間傳遞數(shù)據(jù)

PHP怎么與C語(yǔ)言通信?

/*server.c*/

永定網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,永定網(wǎng)站設(shè)計(jì)制作,有大型網(wǎng)站制作公司豐富經(jīng)驗(yàn)。已為永定千余家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站建設(shè)公司要多少錢(qián),請(qǐng)找那個(gè)售后服務(wù)好的永定做網(wǎng)站的公司定做!

#include string.h

#include stdio.h

#include netinet/in.h

#include stdlib.h

#define SERV_PORT 8000

int main()

{

int sockfd,n,servaddr_len,client_len,connfd;

char * server_ip = "127.0.0.1";

char buf[80];

struct sockaddr_in server,client;

sockfd = socket (AF_INET,SOCK_STREAM,0);

bzero(server,sizeof(server));

server.sin_family = AF_INET;

server.sin_addr.s_addr = inet_addr(server_ip);

server.sin_port = htons(SERV_PORT);

servaddr_len = sizeof(server);

client_len=sizeof(client);

bind(sockfd,(struct sockaddr *) server,servaddr_len);

listen(sockfd,6);

while(1)

{

bzero(buf,sizeof(buf));

printf("等待讀取數(shù)據(jù).......\n");

connfd=accept(sockfd,(struct sockaddr *)client,client_len);

n = read(connfd,buf,sizeof(buf));

write(connfd,buf,n);

printf("讀取的數(shù)據(jù)為:%s\n",buf);

}

close(sockfd);

return 0;

}

?php

$server_ip="127.0.0.1";

$port = 8000;

if($_POST['submit'])

{

$buf=trim($_POST['buf']);

$sockfd=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("創(chuàng)建失敗");

socket_connect($sockfd,$server_ip,$port)or die("連接錯(cuò)誤");

socket_write($sockfd,$buf,strlen($buf))or die("寫(xiě)入錯(cuò)誤");

$a=socket_read($sockfd,80);

echo $a;

$buf="";

socket_close($sockfd);

}

?

form action="tcpclient.php" method="post"

請(qǐng)選則發(fā)送方式:brinput type=text name="buf"

input type=submit name="submit" value="發(fā)送"

/form

tcp方式不能通信解決方法

執(zhí)行:getsebool -a |grep http

查看httpd_can_network_connect -- off 是否為打開(kāi)狀態(tài)

執(zhí)行:setsebool httpd_can_network_connect on 把httpd_can_network_connect設(shè)置為打開(kāi)狀態(tài)

tcp方式不能通信解決方法

執(zhí)行:getsebool -a |grep http

查看httpd_can_network_connect -- off 是否為打開(kāi)狀態(tài)

執(zhí)行:setsebool httpd_can_network_connect on 把httpd_can_network_connect設(shè)置為打開(kāi)狀態(tài)

從C/C++遷移到PHP——判斷字符類型的函數(shù)

在C/C++中,頭文件ctype.h中定義了關(guān)于字符類型一組宏,可以得到給定字符的類型。

而PHP中沒(méi)有相關(guān)函數(shù)。前些天發(fā)現(xiàn)在下載的PHP中提供了一個(gè)名為php_ctype.dll的擴(kuò)展庫(kù),

加載后發(fā)現(xiàn)提供一部分此類的函數(shù),特整理出來(lái)供大家參考。

在PHP中正確加載php_ctype.dll文件后,用?php

phpinfo();?可以看到以下信息:

ctype

ctype

functions

enabled

(experimental)

然后就可以使用它所提供的函數(shù)了。所有函數(shù)的用法同C/C++基本相同,區(qū)別在于在C/C++中函數(shù)的參數(shù)是

字符型(char),而在PHP中函數(shù)的參數(shù)可以是字符串(string)。例如:

?php

$string="123ADAADAD";

if(isalnum($string))

{

echo

"只有大小寫(xiě)字母和數(shù)字!";

}

?

附:php_ctype.dll支持的函數(shù)

bool

isalnum(string)

bool

isalpha(string)

bool

iscntrl(string)

bool

isdigit(string)

bool

isgraph(string)

bool

islower(string)

bool

isprint(string)

bool

ispunct(string)

bool

isspace(string)

bool

isupper(string)

bool

isxdigit(string)

【本文版權(quán)歸作者凡草0515與奧索網(wǎng)共同擁有,如需轉(zhuǎn)載,請(qǐng)注明作者及出處】

php與C的交互問(wèn)題

你這樣做簡(jiǎn)直就是浪費(fèi)了PHP 。

PHP 是做后端的不是做前端的。前端用 html。

如果不是效率要求特別高,是用不上C 的。

而且PHP 的效率已經(jīng)非常高了。

PHP的tcp/ip怎么與C語(yǔ)言的tcp/ip相互通信?

包括對(duì)各種流數(shù)據(jù)的讀和寫(xiě):內(nèi)存流、網(wǎng)絡(luò)流或文件流。當(dāng)然,通過(guò)NSStream也可以與服務(wù)器進(jìn)行通信。 無(wú)論是通過(guò)NSStream向服務(wù)器寫(xiě)數(shù)據(jù),還是從NStream對(duì)象中讀取服務(wù)器數(shù)據(jù),都是一件簡(jiǎn)單的事情。 在Mac OS X中,使用NSHost和NSStream與服務(wù)器進(jìn)行連接的代碼如下: NSInputStream *iStream; NSOutputStream *oStream; uint portNo = 500; NSURL *website = [NSURLURL

當(dāng)前文章:c與本地php交換數(shù)據(jù) php之間傳遞數(shù)據(jù)
標(biāo)題URL:http://muchs.cn/article36/dohdhsg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機(jī)網(wǎng)站建設(shè)、網(wǎng)站收錄動(dòng)態(tài)網(wǎng)站、App開(kāi)發(fā)、小程序開(kāi)發(fā)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)