首頁 後端開發 php教程 PHP面试题基础有关问题

PHP面试题基础有关问题

Jun 13, 2016 pm 12:23 PM
client message server

PHP面试题基础问题

1.对于大流量的网站,您采用什么样的方法来解决访问量问题?

首先,确认服务器硬件是否足够支持当前的流量

其次,优化数据库访问。

第三,禁止外部的盗链。

第四,控制大文件的下载。

第五,使用不同主机分流主要流量。

第六,使用流量分析统计软件。

2.用PHP写出显示客户端IP与服务器IP的代码:

//显示客户端IP

function get_client_ip() {#

if(getenv('HTTP_CLIENT_IP')) {

$client_ip = getenv('HTTP_CLIENT_IP');

} elseif(getenv('HTTP_X_FORWARDED_FOR')) {

$client_ip = getenv('HTTP_X_FORWARDED_FOR');

} elseif(getenv('REMOTE_ADDR')) {

$client_ip = getenv('REMOTE_ADDR');

} else {

$client_ip = $HTTP_SERVER_VAR['REMOTE_ADDR'];

}

return $client_ip;

}

//服务器IP

function get_server_ip(){

if (isset($_SERVER))

{

if($_SERVER['SERVER_ADDR']) $huoqu_ip=$_SERVER['SERVER_ADDR'];

else $huoqu_ip=$_SERVER['LOCAL_ADDR'];

}

else

{

$huoqu_ip=getenv('SERVER_ADDR');

}

return $huoqu_ip;

}

3.MYsql编程面试题。

(1) 某内容管理系统中,表message有如下字段:

id 文章id

title 文章标题

content 文章内容

category_id 文章分类id

hits 点击量

创建上表,写出MySQL语句:

CREATE TABLE 'message'(

id int(11) NOT NULL auto_increment,

title varchar(200) default NULL,

content blob,

category_id int(11) default NULL,

hits int(11) default NULL,

PRIMARY KEY('id')

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

(2)同样上述新闻发布系统:表comment记录用户回复内容,字段如下:

comment_id 回复id

id 文章id,关联message表中的id

comment_content 回复内容

现通过查询数据库需要得到以下格式的文章标题列表,并按照回复数量排序,回复最高的排在最前面

文章id 文章标题 点击量 回复数量

用一个SQL语句完成上述查询,如果文章没有回复则回复数量显示为0

SELECT message.id id,message.title title,IF(message.`hits` IS NULL,0,message.`hits`)

hits,IF(comment.`id` is NULL,0,count(*)) number

FROM message LEFT JOIN comment ON message.id=comment.id

GROUP BY message.`id`

(3)上述内容管理系统,表category保存分类信息,字段如下 (3分)

category_id int(4) not null auto_increment;

categroy_name varchar(40) not null;

用户输入文章时,通过选择下拉菜单选定文章分类

写出如何实现这个下拉菜单

function categoryList()

{

$result=mysql_query("select category_id,categroy_name from category")

or die("Invalid query: " . mysql_error());

print("");

}

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何安裝、解除安裝、重設Windows伺服器備份 如何安裝、解除安裝、重設Windows伺服器備份 Mar 06, 2024 am 10:37 AM

WindowsServerBackup是WindowsServer作業系統自帶的功能,旨在協助使用者保護重要資料和系統配置,並為中小型和企業級企業提供完整的備份和復原解決方案。只有執行Server2022及更高版本的使用者才能使用此功能。在本文中,我們將介紹如何安裝、解除安裝或重設WindowsServerBackup。如何重置Windows伺服器備份如果您的伺服器備份遇到問題,備份所需時間過長,或無法存取已儲存的文件,那麼您可以考慮重新設定WindowsServer備份設定。要重設Windows

vue3中怎麼使用element-plus呼叫message vue3中怎麼使用element-plus呼叫message May 17, 2023 pm 03:52 PM

vue3使用element-plus呼叫message環境:vue3+typescript+element-plus1.全局引入element之後element已經在app.config.globalProperties添加了全局方法$message所以在optionsAPI中可以直接使用mounted(){(thisasany). $message.success("this.$message");}2.在CompositionAPI中setup方法傳入了兩個變數props和

Windows Server 2025預覽版迎來更新,微軟改善Insiders測試體驗 Windows Server 2025預覽版迎來更新,微軟改善Insiders測試體驗 Feb 19, 2024 pm 02:36 PM

在發布WindowsServer的build26040版本之際,微軟公佈了該產品的官方名稱:WindowsServer2025。一同推出的,還有Windows11WindowsInsiderCanaryChannel版本的build26040。有些朋友可能還記得,多年前有人成功將WindowsNT從工作站模式轉換為伺服器模式,顯示微軟作業系統各版本之間的共通性。儘管現在微軟的伺服器作業系統版本和Windows11之間有明顯區別,但關注細節的人可能會好奇:為什麼WindowsServer更新了品牌,

怎麼修改Nginx版本名稱偽裝任意web server 怎麼修改Nginx版本名稱偽裝任意web server May 14, 2023 pm 09:19 PM

如何修改nginx預設的名稱,可以稍微的偽裝一下,也可以裝x一般來說修改3個位置,一個是nginx.h、另一個是ngx_http_header_filter_module.c、還有一個ngx_http_special_response.c。提示:一般修改都是在nginx編譯之前修改,修改完了之後需要重新編譯程式碼如下:scr/core/nginx.conf#definenginx_version"1.4.7"#definenginx_ver"nginx/"n

微軟發布 Windows Server vNext 預覽版 25335 微軟發布 Windows Server vNext 預覽版 25335 Jan 10, 2024 am 08:49 AM

微軟在針對桌面端發布Win11預覽版更新的同時,今天也發布了WindowsServer長期服務頻道(LTSC)預覽版Build25335。微軟和以往相同,並未公佈完整的更新日誌,甚至於沒有提供相應的部落格文章。微軟調整了WindowsServer預覽版更新日誌,讓其和Canary頻道版本相同,如果沒有引進新的內容,則不放官方部落格文章。 IT之家註:Server的品牌尚未更新,預覽版仍為WindowsServer2022。此外,微軟將這些版本稱為WindowsServervNext,而不是已經上市的W

微軟發布 Windows Server 26080 預覽版更新:修復 Feedback Hub 故障 微軟發布 Windows Server 26080 預覽版更新:修復 Feedback Hub 故障 Mar 14, 2024 pm 07:11 PM

IT之家3月14日消息,微軟今天在桌面端發布Windows11Build26080預覽版更新之外,也更新推出了WindowsServerBuild26080預覽版更新。作為即將推出的WindowsServer長期服務通道(LTSC)的最新預覽版,WindowsServerBuild26080提供了資料中心版和標準版,使用者可以選擇桌面體驗和伺服器核心安裝選項。此版本還包括容器主機的年度通道,以及專門用於虛擬機器評估的Azure版本。 IT之家查詢X社群媒體,用戶回饋點擊右下角的Copilot按鈕,會

Nginx中Server和Location的匹配邏輯是什麼 Nginx中Server和Location的匹配邏輯是什麼 May 12, 2023 am 11:10 AM

server的匹配邏輯nginx在決定請求由哪個server塊執行時,主要關注的是server塊中的listen和server_name兩個字段listen命令listen字段定義server響應的ip和端口,如果沒有明確配置listen字段,默認監聽0.0.0.0:80(root)或0.0.0.0:8080(非root)listen可以被設定為:一個ip和連接埠的組合一個單獨的ip,預設監聽80埠一個單獨的連接埠,預設監聽所有的ip介面一個unixsocket路徑其中最後一項通常只用於在不同的

在Ubuntu Server 11.04上安裝GNOME 3的步驟 在Ubuntu Server 11.04上安裝GNOME 3的步驟 Dec 31, 2023 pm 03:59 PM

如果你認為安裝UbuntuServer11.04版完全沒必要裝圖形介面,更沒有必要裝目前還不是很完善的GNOME3。 。或應該用ARCH+GNOME3搭建。那麼請別繼續浪費時間看下去。前後花了2個晚上和一個白天,重裝了N次。終於有點成果了。不容易啊。廢話少說,正題:硬體:ThinkPadX61一隻,UbuntuServer11.04安裝U盤一隻上網:ADSL(無線,有線)操作:偽程序猿一枚1.插入U盤,重啟筆記本,狂按F12。 (針對X61)2.進入啟動選項介面,選擇USB啟動,然後選擇安裝Ubu

See all articles