導航:首頁 > 編程語言 > php方法裡面寫方法

php方法裡面寫方法

發布時間:2022-07-15 14:01:33

php寫個方法

你要先寫mysql query 吧
select if(count(*)>0,1,0) from table where date between '2013-03-19'and '2013-03-20';
你用php 的mysql或mysqli run一下這個query就有答案了

❷ php封裝一個用戶類,裡面有登錄注冊方法,這個要怎麼寫

第一步:login.php

//登陸方法
public function login(){
//如果用戶名和密碼為空,則返回登陸頁面
if(empty($_POST['username']) || empty($_POST['password'])){
$data['verifycode'] = rand(1000,9999);//生成一個四位數字的驗證碼
//將驗證碼放入session中,注意:參數是數組的格式
$this->session->set_userdata($data);
//注意:CI框架默認模板引擎解析的模板文件中變數不需要$符號
//$this->parser->parse("admin/login",$data);
//smarty模板變數賦值
$this->tp->assign("verifycode",$data['verifycode']);
//ci框架在模板文件中使用原生態的PHP語法輸出數據
//$this->load->view('login',$data);//登陸頁面,注意:參數2需要以數組的形式出現
//顯示smarty模板引擎設定的模板文件
$this->tp->display("admin/login.php");
}else{
$username = isset($_POST['username'])&&!empty($_POST['username'])?trim($_POST['username']):'';//用戶名
$password = isset($_POST['password'])&&!empty($_POST['password'])?trim($_POST['password']):'';//密碼
$verifycode = isset($_POST['verifycode'])&&!empty($_POST['verifycode'])?trim($_POST['verifycode']):'';//驗證碼

//做驗證碼的校驗
if($verifycode == $this->session->userdata('verifycode')){
//根據用戶名及密碼獲取用戶信息,注意:參數2是加密的密碼
$user_info=$this->user_model->check_user_login($username,md5($password));
if($user_info['user_id'] > 0){
//將用戶id、username、password放入cookie中
//第一種設置cookie的方式:採用php原生態的方法設置的cookie的值
//setcookie("user_id",$user_info['user_id'],86500);
//setcookie("username",$user_info['username'],86500);
//setcookie("password",$user_info['password'],86500);
//echo $_COOKIE['username'];

//第二種設置cookie的方式:通過CI框架的input類庫
$this->input->set_cookie("username",$user_info['username'],3600);
$this->input->set_cookie("password",$user_info['password'],3600);
$this->input->set_cookie("user_id",$user_info['user_id'],3600);
//echo $this->input->cookie("password");//適用於控制器
//echo $this->input->cookie("username");//適用於控制器
//echo $_COOKIE['username'];//在模型類中可以通過這種方式獲取cookie值
//echo $_COOKIE['password'];//在模型類中可以通過這種方式獲取cookie值

//第三種設置cookie的方式:通過CI框架的cookie_helper.php函數庫文件
//這種方式不是很靈驗,建議大家採取第二種方式即可
//set_cookie("username",$user_info['username'],3600);
//echo get_cookie("username");

//session登陸時使用:將用戶名和用戶id存入session中
//$data['username']=$user_info['username'];
//$data['user_id']=$user_info['user_id'];
//$this->session->set_userdata($data);

//跳轉到指定頁面
//注意:site_url()與base_url()的區別,前者帶index.php,後者不帶index.php
header("location:".site_url("index/index"));
}
}else{
//跳轉到登陸頁面
header("location:".site_url("common/login"));
}
}
}
}

第二步:User_model.php

//cookie登陸:檢測用戶是否登陸,如果cookie值失效,則返回false,如果cookie值未失效,則根據cookie中的用戶名和密碼從資料庫中獲取用戶信息,如果能獲取到用戶信息,則返回查詢到的用戶信息,如果沒有查詢到用戶信息,則返回0
public function is_login(){
//獲取cookie中的值
if(empty($_COOKIE['username']) || empty($_COOKIE['password'])){
$user_info = false;
}else{
$user_info=$this->check_user_login($_COOKIE['username'],$_COOKIE['password']);
}
return $user_info;
}

//根據用戶名及加密密碼從資料庫中獲取用戶信息,如果能獲取到,則返回獲取到的用戶信息,否則返回false,注意:密碼為加密密碼
public function check_user_login($username,$password){
//這里大家要注意:$password為md5加密後的密碼
//$this->db->query("select * from ");
//快捷查詢類的使用:能為我們提供快速獲取數據的方法
//此數組為查詢條件
//注意:關聯數組
$arr=array(
'username'=>$username,//用戶名
'password'=>$password,//加密密碼
'status'=>1 //賬戶為開啟狀態
);
//在database.php文件中已經設置了數據表的前綴,所以此時數據表無需帶前綴
$query = $this->db->get_where("users",$arr);
//返回二維數組
//$data=$query->result_array();
//返回一維數組
$user_info=$query->row_array();
if(!empty($user_info)){
return $user_info;
}else{
return false;
}
}

第三步:其它控制器:

public function __construct(){

//調用父類的構造函數
parent::__construct();
$this->load->library('tp'); //smarty模板解析類
$this->load->helper('url'); //url函數庫文件
$this->load->model("user_model");//User_model模型類實例化對象
$this->cur_user=$this->user_model->is_login();
if($this->cur_user === false){
header("location:".site_url("common/login"));
}else{
//如果已經登陸,則重新設置cookie的有效期
$this->input->set_cookie("username",$this->cur_user['username'],3600);
$this->input->set_cookie("password",$this->cur_user['password'],3600);
$this->input->set_cookie("user_id",$this->cur_user['user_id'],3600);
}

$this->load->library('pagination');//分頁類庫
$this->load->model("role_model");//member_model模型類
$this->load->model("operation_model");//引用operation_model模型
$this->load->model("object_model");//引用object_model模型
$this->load->model("permission_model");//引用permission_model模型
}

❸ php中增刪改查中的insert和update能寫到一個方法裡面么怎麼寫

首先 給你個例子 如果按你的要求 我會這么寫
function iuSql($type){
if($type='insert'){
//執行插入語句
}
if($type='update'){
//執行更新語句
}
}
這樣可以
但是 我認為 這樣做 都不如你寫兩個單獨的 函數 一個插入一個更新
因為 以後也好修改
一般情況下 函數都是為了重復使用 所以才寫的 特定一些動作 就寫到一個函數里是比較好的
你這個 插入和 更新 我個人認為 是 屬於兩個 動作 所以 最好寫到兩個不同的函數里比較好
因為 他們兩個語法上來說也有些差別吧 insert into table update table

❹ PHP文件寫入的幾種方法

通過fwrite
$file = fopen("test.txt","a+"); //次方法會自動生成文件test,txt,a表示追加寫入,
//w代表替換寫入 fwrite($file,"寫入代碼"); fclose($file);
file_put_content()方法寫入

file_put_contents("test.txt","奧斯卡老\r\n頓積分");//這里說一下\r\n在雙引號下
//才會換行如果單引號就識別不了
//如果想追加寫入內容,這個函數還有第三個參數FILE_APPEND

❺ PHP中這種方法怎樣寫的

類里的方法,變數如果不加任何描述關鍵詞那麼默認的都是public
至於那種連貫寫法主要是方法返回了當前類的對象
就像一樓的那種

❻ 怎麼編寫PHP程序

有關PHP的安裝配置,可以查閱網頁陶吧上的「PHP安裝全攻略」專題文章。
3.3 語法從語法上看,PHP語言近似於C語言。可以說,PHP是借鑒C語言的語法特徵,由C語言改進而來的。我們可以混合編寫PHP代碼和HTML代碼,不僅可以將PHP腳本嵌入到 HTML 文件中,我們甚至還可以把 HTML 標簽也嵌入在 PHP 腳本里。以下是你可以採用的幾種方法。你可以選用其中一種你最適合的並且就這樣堅持這種方法!
從HTML中分離
以下是可以使用的方法:
<script language="php" . . . </script
<% . . . %
註:當你使用「<? . . . ?」將PHP代碼嵌入於HTML文件中時,可能會同XML發生沖突,同時,能否使用這一縮減形式還取決於PHP本身的設置。為了可適應XML和其它編輯器,你可以在開始的問號後面加上「php」使PHP代碼適應於XML分析器。如:?lt;?php. . . ?」。也可以像寫其它腳本語言那樣使用腳本標記,如:「<script language="php" . . . </script」。
語句與Perl和C一樣,在PHP中用「;」來分隔語句。那些從HTML中分離出來的標志也表示語句的結束。
注釋PHP支持C,C++和Unix風格的注釋方式:
/* C,C++風格多行注釋 */
// C++風格單行注釋
# Unix風格單行注釋
echo 和 print
PHP 和 HTML 最簡單的交互是通過 print 和 echo 語句來實現的,在實際使用中, print 和 echo 兩者的功能幾乎是完全一樣。可以這么說,凡是有一個可以使用的地方,另一個也可以使用。但是,兩者之間也還是一個非常重要的區別:在 echo 函數中,可以同時輸出多個字元串,而在 print 函數中則只可以同時輸出一個字元串。同時,echo函數並不需要圓括弧,所以echo函數更像是語句而不像是函數。讓我們來看看下面這一實例:<?$a="hello";
$b="world";
echo "a","b";
print "a","b";?用瀏覽器觀看這段代碼的運行情況後,你會看到這樣的運行結果:abaParse error: parse error in d:adminmyphphometest.php3 on line 5
這說明這段代碼並不能完全通過解釋,發生錯誤的地方就在代碼的第五行:「print "a","b";」。
3.4一個簡單的實例
通過我們已經學過的知識,你可以編寫一個最簡單的程序輸出一個也許是程序世界中最有名的詞語<HTML<HEAD<TITLE<?echo "Hello World!";?</TITLE</HEAD<BODY<H1First PHP page</H1<HR<?// Single line C++ style comment/*printing the message*/echo "Hello World!";
# Unix style single line comment?</BODY</HTML找本書坐下來看下,學一門語言至少要靜下心來研究一周,再加上不斷的實踐!補充:

❼ PHP中寫一個資料庫查詢的類的方法代碼要如何寫

<?php

if(!defined("INCLUDE_MYSQL_OK")) {
define("INCLUDE_MYSQL_OK","");
class MySQL_class {
var $debug = true;
var $db,
$id,
$result, /* 查詢結果指針 */
$rows, /* 查詢結果行數 */
$fields, /* 查詢結果列數 */
$data, /* 數據結果 */
$arows, /* 發生作用的紀錄行數目 */
$iid; /* 上次插入操作後,可能存在的"AUTO_INCREMENT"屬性欄位的值,如果為"0",則為空 */
var $user, $pass, $host, $charset;

/*
* 請注意用戶名和密碼是否正確
*/

function Setup ($host, $user, $pass, $charset='utf8') {
$this->host = $host;
$this->user = $user;
$this->pass = $pass;
$this->charset = $charset;
}

function Connect ($db = "") {
global $CFG_MYSQL_INFO;
if (!$this->host) {
$this->host = $CFG_MYSQL_INFO["host"];
}
if (!$this->user) {
$this->user = $CFG_MYSQL_INFO["user"]; /* 在這里作修改 */
}
if (!$this->pass) {
$this->pass = $CFG_MYSQL_INFO["passwd"]; /* 在這里作修改 */
}
if (!$this->charset) {
$this->charset = "utf8"; /* 在這里作修改 */
}
if (empty($db))
$this->db = $CFG_MYSQL_INFO["database"];
else
$this->db = $db;
$this->id = @mysql_connect($this->host, $this->user, $this->pass);
if (!$this->id)
return false;

$this->SelectDB($this->db); /* 定位到指定資料庫 */

$this->Query("SET NAMES '".$this->charset."'");
return true;
}

function Close(){
@mysql_close($this->id);
}

function SelectDB ($db) {
if(!@mysql_select_db($db, $this->id))
return false;
else
return true;
}

function Begin () {
$this->result = @mysql_query("START TRANSACTION WITH CONSISTENT SNAPSHOT", $this->id);
if (!$this->result)
return false;
return true;
}

function Commit () {
$this->result = @mysql_query("COMMIT", $this->id);
if (!$this->result)
return false;
return true;
}

function Rollback () {
$this->result = @mysql_query("ROLLBACK", $this->id);
if (!$this->result)
return false;
return true;
}
function Escape ($str) {
$escstr = mysql_escape_string($str);
return $escstr;
}

# 普通查詢功能,主要用於返回結果是多條記錄的情況
# 請使用 Fetch 方法取得每條記錄信息
function Query ($query) {
$this->result = @mysql_query($query, $this->id);
if (!$this->result)
{
if ($this->debug)
MySQL_ErrorMsg ("不能執行查詢(query): $query");
else
return false;
}
$this->rows = @mysql_num_rows($this->result);
$this->fields = @mysql_num_fields($this->result);
if (!$this->rows) return false;
return true;
}

function QuerySql ($query) {
$ret = @mysql_query($query, $this->id);
if ($ret === false)
{
if ($this->debug)
MySQL_ErrorMsg ("不能執行查詢(query): $query");
else
return false;
}
$this->result = $ret;
$this->rows = @mysql_num_rows($this->result);
$this->fields = @mysql_num_fields($this->result);
return true;
}

# 如果查詢結果為單條記錄時使用,返回結果存儲於數組 data 中
function QueryRow ($query) {
$this->result = @mysql_query($query, $this->id);
if (!$this->result)
{
if ($this->debug)
MySQL_ErrorMsg ("不能執行查詢(query): $query");
else
return false;
}
$this->rows = @mysql_num_rows($this->result);
$this->data = @mysql_fetch_array($this->result, MYSQL_ASSOC);
//MySQL_ErrorMsg ("不能從查詢結果中取得數據 $query");
if (!$this->result || !$this->rows)
return false;
return true;
}

# 移動到指定記錄行,將該行結果儲存於數組 data 中
function Fetch ($row) {
if(!@mysql_data_seek($this->result, $row))
//MySQL_ErrorMsg ("不能定位到指定數據行 $row");
return false;
$this->data = @mysql_fetch_array($this->result, MYSQL_ASSOC);
//MySQL_ErrorMsg ("不能提取指定數據行數據 $row");
if (!$this->data)
return false;
return true;
}

/* 以下方法將作用於 arows */
/* 此方法將作用於 iid */
function Insert ($query) {
$this->result = @mysql_query($query, $this->id);
if (!$this->result)
{
if ($this->debug)
MySQL_ErrorMsg ("不能執行查詢(query): $query");
else
return false;
}
$this->arows = @mysql_affected_rows($this->id);
$this->iid = @mysql_insert_id($this->id);
return true;
}

function Update ($query) {
$this->result = @mysql_query($query, $this->id);
if (!$this->result)
{
if ($this->debug)
MySQL_ErrorMsg ("不能執行查詢(query): $query");
else
return false;
}
$this->arows = @mysql_affected_rows($this->id);
if (!$this->arows || $this->arows == -1)
return false;
return true;
}

function Delete ($query) {
$this->result = @mysql_query($query, $this->id);
if (!$this->result)
{
if ($this->debug)
MySQL_ErrorMsg ("不能執行查詢(query): $query");
else
return false;
}
$this->arows = @mysql_affected_rows($this->id);
return true;
}

function Error (){
return mysql_error()."(".mysql_errno().")";
}

function Errno (){
return mysql_errno();
}
}

/*
* MySQL_ErrorMsg
* 輸出錯誤信息
*/

function MySQL_ErrorMsg ($msg) {
# 關閉可能影響字元顯示的HTML代碼
echo("</ul></dl></ol>\n");
echo("</table></script>\n");

# 錯誤信息
$text = "<font color=\"#000000\" style=\"font-size: 9pt; line-height: 12pt\"><p>系統提示:".$msg."<br>";
$text .= "錯誤信息:";
$text .= mysql_error()."<br>";
$text .= "錯誤代碼:".mysql_errno()."<br><br>";
$text .= "請稍候再試,如果問題仍然存在,請與 <a href=\"mailto:[email protected]\">系統管理員</a> 聯系!";
$text .= "</font>\n";
die($text);
}
}
?>
一些細節的地方自己修改吧 主要是我在別的文件專門定義了全局變數,你看一遍,把應改的地方改一下就好了

❽ 在PHP中,如何實現寫入或創建另1個PHP文件

  1. 使用fopen,fwrite,fclose 方法

  2. 簡單的例子如下<?php
    $afile = fopen("afile.php", "w") or die("Unable to open file!");
    $txt = "Hi, ";
    fwrite($myfile, $txt);
    $txt = "success ";
    fwrite($afile, $txt);
    fclose($afile);
    ?>

  3. 關鍵是寫文件的地方,必須要有寫的許可權。尤其是linux伺服器。 可用 chmod 方法 來更改許可權。

❾ 怎麼把函數寫進Php內

<?php
functionthisIsFunction(){
echo"這是編寫的一個函數!";
}
?>

php編寫函數的方法

請採納!

閱讀全文

與php方法裡面寫方法相關的資料

熱點內容
安裝包加密有什麼用 瀏覽:582
舍利子靈力演算法 瀏覽:499
javacalendar天數 瀏覽:563
anyview閱讀器java 瀏覽:361
怎麼降為安卓10 瀏覽:996
javaweb程序設計郭 瀏覽:249
gm聲望命令 瀏覽:484
pdf轉換器電腦版免費 瀏覽:43
解壓歌曲什麼歌最好 瀏覽:153
諾貝爾pdf 瀏覽:969
雲伺服器快速安裝系統原理 瀏覽:790
蘋果騰訊管家如何恢復加密相冊 瀏覽:117
手機軟體反編譯教程 瀏覽:860
sqlserver編程語言 瀏覽:650
gpa國際標准演算法 瀏覽:238
伺服器編程語言排行 瀏覽:947
怎麼下載快跑app 瀏覽:966
小紅書app如何保存視頻 瀏覽:172
如何解開系統加密文件 瀏覽:811
linux切換root命令 瀏覽:283