Jat421 Posted July 23, 2012 Share Posted July 23, 2012 (edited) Hi, I am little confused on how to pass a variable to all the functions. For example I have a function called Func Connect() $sql = _MySQLConnect('root', 'root', 'test', '192.168.0.10') EndFunc And I have other functions that will be using $sql string to connect to the sql. Func Test() Connect() $i = _Query($sql, "select test from test1 limit 1") EndFunc As you can see I want to pass $sql to test() from the connect(). What is the best way to accomplish this? In C it can be accomplished by using pointers I believe. I guess I am looking for a way to make the code faster without increasing the size. I guess one way of doing it would be to make $sql global variable? Edited July 23, 2012 by Jat421 Link to comment Share on other sites More sharing options...
Skitty Posted July 23, 2012 Share Posted July 23, 2012 at the top of the script text file addd "global $SQL", it should make the variable accessable whereever it will be present Link to comment Share on other sites More sharing options...
water Posted July 23, 2012 Share Posted July 23, 2012 (edited) Globals variables shouldn't be used that way. It's better to return the result of function Connect to the calling script. Func Connect() Local $sql = _MySQLConnect('root', 'root', 'test', '192.168.0.10') Return $sql EndFuncandFunc Test() Local $sql = Connect() $i = _Query($sql, "select test from test1 limit 1") EndFunc Edited July 23, 2012 by water My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
Jat421 Posted July 23, 2012 Author Share Posted July 23, 2012 Great thanks water that's exactly what I was looking for. Thanks! Link to comment Share on other sites More sharing options...
water Posted July 23, 2012 Share Posted July 23, 2012 My UDFs and Tutorials: Spoiler UDFs:Active Directory (NEW 2022-02-19 - Version 1.6.1.0) - Download - General Help & Support - Example Scripts - WikiExcelChart (2017-07-21 - Version 0.4.0.1) - Download - General Help & Support - Example ScriptsOutlookEX (2021-11-16 - Version 1.7.0.0) - Download - General Help & Support - Example Scripts - WikiOutlookEX_GUI (2021-04-13 - Version 1.4.0.0) - DownloadOutlook Tools (2019-07-22 - Version 0.6.0.0) - Download - General Help & Support - WikiPowerPoint (2021-08-31 - Version 1.5.0.0) - Download - General Help & Support - Example Scripts - WikiTask Scheduler (NEW 2022-07-28 - Version 1.6.0.1) - Download - General Help & Support - Wiki Standard UDFs:Excel - Example Scripts - WikiWord - Wiki Tutorials:ADO - WikiWebDriver - Wiki Link to comment Share on other sites More sharing options...
DicatoroftheUSA Posted July 23, 2012 Share Posted July 23, 2012 Byref can also reduce performance penalty. from the helpfile on "func": "The ByRef keyword indicates the parameter should be treated as a reference to the original object. The default behavior copies the parameter into a new variable however ByRef links the new variable to the original parameter. ByRef is typically preferred when a function expects large amounts of data, such as a large array, where copying all the data would impose a significant performance penalty." Statism is violence, Taxation is theft. Autoit Wiki Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now