


The difference between mysql_fetch_row, mysql_fetch_array, mysql_fetch_assoc_PHP tutorial
$link=mysql_connect('localhost','root'," );
mysql_select_db('abc',$link);
$sql = “select * from book”;
$result = mysql_query($sql);
while($row = mysql_fetch_row( $result))
{
echo $row['cid'].'::'.$row[1].'
';
}
$result = mysql_query( $sql);
while($row = mysql_fetch_array($result))
{
echo $row['cid'].'::'.$row[1].'
';
}
$result = mysql_query($sql);
while($row = mysql_fetch_object($result))
{
echo $row->cid.':: '.$row->title.”
”;
}
$result = mysql_query($sql);
while($row = mysql_fetch_assoc($result))
{
echo $row['cid'].'::'.$row[1].'
';
}
?>
Analysis :
mysql_fetch_row, this function takes a row from the result set as enumeration data, obtains a row of data from the result set associated with the specified result identifier and returns it as an array. The columns of each result are stored in an array unit. The offset starts from 0. Note that the offset here starts from 0, which means that you cannot use the field name to get the value, you can only use the index to get the value, so the following code cannot get the value:
while ($row = mysql_fetch_row($res)){
echo $row['cid'].'::'.$row[1].";
} //$row['cid' here ] Cannot get value.
mysql_fetch_array, gets a row from the result set as an associative array, or a numeric array, or both. In addition to storing the data in the array as a numeric index, you can also store the data as an associative index, using the field name as key name. That is to say, the result he gets is like an array, and the value can be obtained using key or index, so
while($row = mysql_fetch_array($res)){
echo $row['cid'].': :'.$row[1].";
}//Here $row['cid'], $row[1] can get the corresponding value.
mysql_fetch_object, as the name suggests, gets a row from the result set As an object, the field name is used as an attribute, so only in this way can the value be obtained
while($row = mysql_fetch_object($res)){
echo $row->cid.'::'.$ row->title."";
}
mysql_fetch_assoc, obtains a row from the result set as an associative array, which means that this function cannot use the index to obtain the value like mysql_fetch_row, but can only use the field name to obtain the value. So
while($row = mysql_fetch_assoc($res)){
echo $row['cid'].'::'.$row[1].";
} //$row[ 1] You cannot get the value in this way
Additional point:
The mysql_fetch_array function is defined like this: array mysql_fetch_array (resource result [, int result_type]), returns an array generated based on the rows obtained from the result set, if Returns FALSE if there are no more rows.
The optional second parameter result_type in mysql_fetch_array() is a constant that can accept the following values: MYSQL_ASSOC, MYSQL_NUM and MYSQL_BOTH. Among them:
1. mysql_fetch_assoc($result)==mysql_fetch_array($result,MYSQL_ASSOC);
2. mysql_fetch_row($result)==mysql_fetch_array($result,MYSQL_NUM);
So the mysql_fetch_array() function To some extent, it can be regarded as a collection of mysql_fetch_row() and mysql_fetch_assoc(). In addition, mysql_fetch_array() also has the MYSQL_BOTH parameter, which will result in an array containing both associations and numeric indexes.
Let’s say $row = $db->fetch_array($query);
$db is the human database operation class, $db->fetch_array($query), fetch_array($query) is that The method in the db class, $row = $db->fetch_array($query), means to get a row of records in the database from the recordset $query.
It can be implemented like this without classes
$conn=@mysql_connect($host,$ user,$pass);
@mysql_select_db($database,$conn);
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
$ rows[]=$row;
}

ThesecrettokeepingaPHP-poweredwebsiterunningsmoothlyunderheavyloadinvolvesseveralkeystrategies:1)ImplementopcodecachingwithOPcachetoreducescriptexecutiontime,2)UsedatabasequerycachingwithRedistolessendatabaseload,3)LeverageCDNslikeCloudflareforservin

You should care about DependencyInjection(DI) because it makes your code clearer and easier to maintain. 1) DI makes it more modular by decoupling classes, 2) improves the convenience of testing and code flexibility, 3) Use DI containers to manage complex dependencies, but pay attention to performance impact and circular dependencies, 4) The best practice is to rely on abstract interfaces to achieve loose coupling.

Yes,optimizingaPHPapplicationispossibleandessential.1)ImplementcachingusingAPCutoreducedatabaseload.2)Optimizedatabaseswithindexing,efficientqueries,andconnectionpooling.3)Enhancecodewithbuilt-infunctions,avoidingglobalvariables,andusingopcodecaching

ThekeystrategiestosignificantlyboostPHPapplicationperformanceare:1)UseopcodecachinglikeOPcachetoreduceexecutiontime,2)Optimizedatabaseinteractionswithpreparedstatementsandproperindexing,3)ConfigurewebserverslikeNginxwithPHP-FPMforbetterperformance,4)

APHPDependencyInjectionContainerisatoolthatmanagesclassdependencies,enhancingcodemodularity,testability,andmaintainability.Itactsasacentralhubforcreatingandinjectingdependencies,thusreducingtightcouplingandeasingunittesting.

Select DependencyInjection (DI) for large applications, ServiceLocator is suitable for small projects or prototypes. 1) DI improves the testability and modularity of the code through constructor injection. 2) ServiceLocator obtains services through center registration, which is convenient but may lead to an increase in code coupling.

PHPapplicationscanbeoptimizedforspeedandefficiencyby:1)enablingopcacheinphp.ini,2)usingpreparedstatementswithPDOfordatabasequeries,3)replacingloopswitharray_filterandarray_mapfordataprocessing,4)configuringNginxasareverseproxy,5)implementingcachingwi

PHPemailvalidationinvolvesthreesteps:1)Formatvalidationusingregularexpressionstochecktheemailformat;2)DNSvalidationtoensurethedomainhasavalidMXrecord;3)SMTPvalidation,themostthoroughmethod,whichchecksifthemailboxexistsbyconnectingtotheSMTPserver.Impl


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

Atom editor mac version download
The most popular open source editor

WebStorm Mac version
Useful JavaScript development tools

SublimeText3 English version
Recommended: Win version, supports code prompts!

Dreamweaver Mac version
Visual web development tools

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.
