- Community Home
- >
- Servers and Operating Systems
- >
- Operating Systems
- >
- Operating System - OpenVMS
- >
- Re: Creating Global Symbol In PHP?
Categories
Company
Local Language
Forums
Discussions
Forums
- Data Protection and Retention
- Entry Storage Systems
- Legacy
- Midrange and Enterprise Storage
- Storage Networking
- HPE Nimble Storage
Discussions
Discussions
Discussions
Forums
Forums
Discussions
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
- BladeSystem Infrastructure and Application Solutions
- Appliance Servers
- Alpha Servers
- BackOffice Products
- Internet Products
- HPE 9000 and HPE e3000 Servers
- Networking
- Netservers
- Secure OS Software for Linux
- Server Management (Insight Manager 7)
- Windows Server 2003
- Operating System - Tru64 Unix
- ProLiant Deployment and Provisioning
- Linux-Based Community / Regional
- Microsoft System Center Integration
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Discussion Boards
Community
Resources
Forums
Blogs
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО11-14-2008 05:09 AM
тАО11-14-2008 05:09 AM
Creating Global Symbol In PHP?
It looks like the exec() creates it's own context, as I can't see anything when I do $ show symbol test_var.
Anyone know of a way to create a symbol available back at DCL?
BTW, I already know I can do $ DEFINE/JOB TEST_VAR value instead, but I want this to be compatible with existing procedures :)
Rob.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО11-14-2008 07:53 AM
тАО11-14-2008 07:53 AM
Re: Creating Global Symbol In PHP?
The openvms extentions I have don't mention anything about symbols.
Wim
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО11-14-2008 08:11 AM
тАО11-14-2008 08:11 AM
Re: Creating Global Symbol In PHP?
I don't see a PEAR package or such that matches DCL or OpenVMS or VMS over at php.net, and I don't see a listing of what's in the CSWS_PHP package. (The specific implementation of the php_openvms pieces inside that should give you a start, if there's not a solution there for you already.)
If you end up writing (or extending) the php_openvms pieces, that should be able to give you access to lib$set_symbol or such; the calls that are needed to modify the DCL symbol tables (or process logical name tables, via lib$set_logical) in the current process context.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО11-14-2008 08:16 AM
тАО11-14-2008 08:16 AM
Re: Creating Global Symbol In PHP?
function_entry openvms_functions[] = {
PHP_FE(openvms_cvt_filename, NULL)
PHP_FE(openvms_getdvi, NULL)
PHP_FE(openvms_getjpi, NULL)
PHP_FE(openvms_getsyi, NULL)
PHP_FE(openvms_message, NULL)
PHP_FE(openvms_status, NULL)
PHP_FE(openvms_time, NULL)
PHP_FE(openvms_uptime, NULL)
{NULL, NULL, NULL}
};
I think the logical translation is probably more transparent than running the command file, but both require code changes.
Looking at the size and complexity of the existing functions, it would probably be very easy to add a DCL Symbol routine, but plugging anything into the current version and trying to compile it seems to be a minefield!
Lets hope the v5 release has some extra VMS functionality to it.
Rob.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
тАО11-14-2008 08:21 AM
тАО11-14-2008 08:21 AM
Re: Creating Global Symbol In PHP?
#ifdef __VMS
struct dsc$descriptor_s symbol_name_desc;
struct dsc$descriptor_s symbol_value_desc;
symbol_name_desc.dsc$w_length = strlen("ICALC_OUT");
symbol_name_desc.dsc$a_pointer = "ICALC_OUT";
symbol_name_desc.dsc$b_class = DSC$K_CLASS_S;
symbol_name_desc.dsc$b_dtype = DSC$K_DTYPE_T;
#endif
#ifdef __VMS
symbol_value_desc.dsc$w_length = strlen(symbol_value);
symbol_value_desc.dsc$a_pointer = symbol_value;
symbol_value_desc.dsc$b_class = DSC$K_CLASS_S;
symbol_value_desc.dsc$b_dtype = DSC$K_DTYPE_T;
LIB$SET_SYMBOL(&symbol_name_desc,&symbol_value_desc);
#endif
(Caught Hoff's post after I wrote this!)