phpresult
① 在php中$result是一個結果集,$result->num_rows;它不是屬性嗎,屬性不就是
你說的這個$result 可能是 mysqli_result 的實例,即它是一個對象。
具體參考php手冊
http://php.net/manual/zh/class.mysqli-result.php
你說的類似函數的功能是什麼意思?
按你的描述$result,是一個對象,對象的屬性分多種,一種是直接定義public,可以直接賦值和獲取,一種是通過set或get定義,賦值或獲取時會經過get和set處理。
php裡面對象和數組是完全不同的兩種數據類型。
所以你這里問$result,應該考慮它的生成環境,即從哪裡來的,只看一個$result,並不知道它是一個數組,或是對象,
即使是一個結果集,也有可能是php自帶的比如 mysqli-result .更有可能是作者或框架封裝出來的。
② php中對result的操作
結果是可以直接用foreach來遍歷的
返回結果類似以下數組的形式,但不是數組
array(
[0]=>array(
[0]=>'獲取內容1'
[field1]=>'獲取內容1'
[0]=>'獲取內容2'
[field2]=>'獲取內容2'
)
[1]=>array(
[0]=>'獲取內容1'
[field1]=>'獲取內容1'
[0]=>'獲取內容2'
[field2]=>'獲取內容2'
)
)
foreach($result as $key=>$value){
//$key就是你所想要的行數
//$value[0] 等同於 $value['field1']
}
③ PHP mysql_result()函數使用方法
mysql_result定義和用法
mysql_result()
函數返回結果集中一個欄位的值。
mysql_result()
返回
MySQL
結果集中一個單元的內容。欄位參數可以是欄位的偏移量或者欄位名,或者是欄位表點欄位名(tablename.fieldname)。如果給列起了別名('select
foo
as
bar
from...'),則用別名替代列名。
如果成功,則該函數返回欄位值。如果失敗,則返回
false。
調用
mysql_result()
不能和其它處理結果集的函數混合調用。
語法
mysql_result(data,row,field)
參數
描述
data
必需。規定要使用的結果標識符。該標識符是
mysql_query()
函數返回的。
row
必需。規定行號。行號從
0
開始。
field
可選。規定獲取哪個欄位。可以是欄位偏移值,欄位名或
table.fieldname。
如果該參數未規定,則該函數從指定的行獲取第一個欄位。
說明
當作用於很大的結果集時,應該考慮使用能夠取得整行的函數。這些函數在一次函數調用中返回了多個單元的內容,比
mysql_result()
快得多。
此外請注意,在欄位參數中指定數字偏移量比指定欄位名或者
tablename.fieldname
要快得多。
例子
<?php
$con
=
mysql_connect("localhost",
"hello",
"321");
if
(!$con)
{
die('Could
not
connect:
'
.
mysql_error());
}
$db_selected
=
mysql_select_db("test_db",
$con);
$sql
=
"SELECT
*
from
Person";
$result
=
mysql_query($sql,$con);
echo
mysql_result($result,0);
mysql_close($con);
?>
輸出類似:
Adams
php中mysqli替換mysql_result的官方方法
今天升級了php版本,順便想把php代碼中的mysql連接方式改成mysqli,因為官方自php5.3開始一直推薦mysqli
和
pdo
。不多說了,貼代碼
//
錯略的使用mysqli替換
if
(!function_exists('mysql_result'))
{
function
mysql_result($result,
$number,
$field=0)
{
mysqli_data_seek($result,
$number);
$row
=
mysqli_fetch_array($result);
return
$row[$field];
}
}
好了,這篇文章就介紹到這了。
④ php $result 裡面的數據怎麼獲得
你這個是對象數組,那麼就要用對象的方式去獲取
$result=$result->info->funds;
$result->x->c;
或者轉為數組
$result=(array)$result;
$result=$result[info][funds];
$result[x][c];
兩種方式都可以
⑤ php中$result是個布爾值,怎樣判斷這個值的真假呢
我覺得你是不是先要定義$result這個變數。
其次是
if($result)這個裡面是不是要有個邏輯判斷,是真還是假的呀。比如
$result=1;
if($result==1){
$result="0.00";
}
else
{
$result="1.00";
}
⑥ 能不能通俗解釋一下PHP中mysql_result()函數用法
假設資料庫table表結構如下
行號 姓名 年齡
0 趙 11
1 錢 12
2 孫 13
3 李 14
首先查詢這個表
$result = mysql_query("SELECT * FROM table");
再使用這個函數
$row = mysql_result($result, 0);//這里先只取2個參數
$row的值為0,即第一條記錄的第一個欄位,因為沒有第3個參數,默認取第一個欄位
再來看
$row = mysql_result($result, 1, '姓名');
$row的值為錢,即第二條記錄的姓名欄位的值
第二個參數就是記錄的標號(標號並不是行號這個欄位,因為可能也會用其他數據作為主鍵),從0開始
就是這個意思
但,一般從數據集中取記錄時,很少基本沒用過mysql_result函數,大多使用mysql_fetch_array()或mysql_fetch_row()或mysql_fetch_assoc()來取結果集
⑦ php 中$result為什麼會有屬性num
<?php
if (isset($_POST['name']) && (isset($_POST['password']))) {
$db = new mysqli('localhost', 'root', 'chenzeshu8', 'workbase');
if ($db->connect_errno) {
echo "鏈接失敗";
} else {
echo "連接成功";
$name = $_POST['name'];
$password = $_POST['password'];
$query = "SELECT id,name from worklist WHERE name='" . $name . "',AND password ='" . $password . "'";
$result = $db->query($query);
if ($result) {
if ($result->num_rows) {
echo "成功";
} else {
echo "失敗";
}
} else {
var_mp($db->error_list); // Returns a list of errors from the last command executed
}
$db->close();
}
}
-
⑧ php $result問題
mysql_query($sql);
如果$sql是查詢語句返回的是資源,
如果是插入,修改或者刪除則返回的是操作影響的記錄條數
如插入1條記錄這返回1
⑨ php 中$result為什麼會有屬性num_rows屬性
num_rows 是原生mysql中的mysql_num_rows() 函數,用來返回結果集中行的數目.
而你這里的num_rows 是被封裝成mysql類了,具體你要去看你程序里的mysql類是怎麼使用的.
而你給出的代碼也很明顯
$num_cats=@$result->num_rows;
if($num_cats==0){
returnfalse;
}
自定義變數$num_cats= 等於 num_rows返回的數目
那麼接下來就一個判斷
如果返回的數目等於0那麼 返回false false=假
$result=db_result_to_array($result);
resutn $result;
最後這里返回的應該是一個數組 db_result_to_array()
⑩ PHP中 result_array()和row_array()的區別
你可以用這兩種方式分別獲取同一個表中的數據,用print_r()函數輸出得到的數組,看看有什麼區別。
實際上,採用row_array()返回的僅僅是查詢結果中的第一條數據(返回的是一維數組),而採用result_array()則會返回所有查詢結果(返回的是二維數組),這就是區別。當你的查詢結果不止一條時,區別就體現出來了。
有的問題,可以先網路查詢一下!要學會用搜索引擎
