note 101808 added to function.sqlite-field-name
| From: | JanHoleek at osu1 dot php dot net | Date: | Wed, 12 Jan 2011 13:27:08 +0000 |
| Subject: | note 101808 added to function.sqlite-field-name | ||
| Groups: | php.notes | ||
| Request: | Send a blank email to php-notes+get-175663@lists.php.net to get a copy of this message | ||
This code works with SQlite version 3 databases.
<?php
function sqlite_field_names($dbfile, $tablename){
try
{
$db = new PDO("sqlite:".$dbfile);
$sql=$db->query("SELECT sql FROM sqlite_master WHERE
tbl_name='".$tablename."'");
foreach($sql as $row)
{
$fields = $row["sql"];
}
$db = NULL;
}
catch(PDOException $e)
{
print "Exception : ".$e->getMessage();
}
$cut=strtok($fields,"(");
while($fieldnames[]=strtok(",")) {};
array_pop($fieldnames);
foreach($fieldnames as $no => $field)
if (strpos($field, "PRIMARY KEY")){
strtok($field,"(");
$primary=strtok(")");
unset($fieldnames[$no]);
} else
$fieldnames[$no]=strtok($field, " ");
return $fieldnames;
}
print_r(array_values(sqlite_field_names($dbfile, $tablename)));
?>
----
Server IP: 147.32.160.17
Probable Submitter: 193.179.186.2
----
Manual Page -- http://www.php.net/manual/en/function.sqlite-field-name.php
Edit -- https://master.php.net/note/edit/101808
Del: integrated -- https://master.php.net/note/delete/101808/integrated
Del: useless -- https://master.php.net/note/delete/101808/useless
Del: bad code -- https://master.php.net/note/delete/101808/bad+code
Del: spam -- https://master.php.net/note/delete/101808/spam
Del: non-english -- https://master.php.net/note/delete/101808/non-english
Del: in docs -- https://master.php.net/note/delete/101808/in+docs
Del: other reasons-- https://master.php.net/note/delete/101808
Reject -- https://master.php.net/note/reject/101808
Search -- https://master.php.net/manage/user-notes.php