If you are having trouble connecting to your sybase database on unix, try checking that the SYBASE environmental variable is set correctly. I was getting connection errors until I found out that this variable had not been set through the server.
PHP - Manual: sybase_connect
2024-11-15
(PHP 4, PHP 5)
sybase_connect — Opens a Sybase server connection
This function was REMOVED in PHP 7.0.0.
$servername
[, string $username
[, string $password
[, string $charset
[, string $appname
[, bool $new
= FALSE
]]]]]] ) : resourcesybase_connect() establishes a connection to a Sybase server.
In case a second call is made to sybase_connect() with the same arguments, no new link will be established, but instead, the link identifier of the already opened link will be returned.
The link to the server will be closed as soon as the execution of the script ends, unless it's closed earlier by explicitly calling sybase_close().
servername
The servername argument has to be a valid servername that is defined in the 'interfaces' file.
username
Sybase user name
password
Password associated with username
.
charset
Specifies the charset for the connection
appname
Specifies an appname for the Sybase connection. This allow you to make separate connections in the same script to the same database. This may come handy when you have started a transaction in your current connection, and you need to be able to do a separate query which cannot be performed inside this transaction.
new
Whether to open a new connection or use the existing one.
Returns a positive Sybase link identifier on success, or FALSE
on
failure.
版本 | 说明 |
---|---|
5.3.0 |
The new parameter was added.
|
Example #1 sybase_connect() example
<?php
$link = sybase_connect('SYBASE', '', '')
or die("Could not connect !");
echo "Connected successfully";
sybase_close($link);
?>
If you are having trouble connecting to your sybase database on unix, try checking that the SYBASE environmental variable is set correctly. I was getting connection errors until I found out that this variable had not been set through the server.
To connect from win32 to Sybase on Unix , you can use sybase open client and make sure to use the hostname in sybase_connect as it is defined in the OC sql.ini file .. it worked that way !
To decrease the level of messages sent back from the dbserver (such as 'changed context...') try:
sybase_min_server_severity(11);
freetds is a great, free tool to access your sybase tables with PHP. The setup can be a bit tricky. Use the following to put the environment variables that you need:
<?php
putenv ("SYBASE=/usr/local/freetds");
putenv ("SYBPLATFORM=linux");
putenv ("LD_LIBRARY_PATH=/usr/local/freetds/lib");
putenv ("LC_ALL=default");
putenv ('PATH=\"/usr/local/freetds/bin:$PATH\"');
putenv ("DSQUERY=SYBASE");
?>
Even if not using freetds, you'll need those env vars to make any sybase connection work. Another option is to just load them into your box from the command line.
官方地址:https://www.php.net/manual/en/function.sybase-connect.php