| RPG PHP tutorial |
Array
Example: 2 arrays with 100 elements of 1 char length.
RPG3 E....FromfileTofile++Name++N/rN/tbLenPDSArrnamLenPDSComments++++++
RPG4 DName+++++++++++ETDsFrom+++To/L+++IDc.Keywords+++++++++++++++++++++++++
PHP <?php$MyTab=array(); $MyTab2=array(); ?>
In PHP, when you use a variable it always start with $.
If
RPG3 CL0N01N02N03Factor1+++OpcdeFactor2+++ResultLenDHHiLoEqComments++++C A IFEQ ‘abc’ C MOVE B C C ELSE C MOVE Z C C ENDIF
RPG4 CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++C if A = ‘abc’ C eval C = B C endif
PHP <?php
Or also: <?php($a == "abc" ? 'C=B' :'C=Z'); ?>
In PHP, if you write
Loop
RPG3 CL0N01N02N03Factor1+++OpcdeFactor2+++ResultLenDHHiLoEqComments++++C Z-ADD1 I 20 C I DOUGT100 C MOVE MYTAB,I MYTAB2,I C ADD 1 I C ENDDO
RPG4 CL0N01Factor1+++++++Opcode&ExtExtended-factor2+++++++++++++++++++++++++C eval i = 1 C dou i > 100 C eval MyTab2(I) = MyTab(i) C eval i = i + 1 C enddo
PHP <?php
Or also: <?phpfor ($i = 0; $i < 100; $MyTab2[$i++] = $MyTab[$i++]); ?>
In PHP, array indexes can be numeric and also alphanumeric. When they are numeric, they start at 0, not 1.
Working with Database file - READ
RPG3 FMYFILE IF E K DISK… C READ MYFILE 89 C *IN89 DOWEQ'0' C MOVE MYFLD VAR1 10 C … C READ MYFILE 89 C ENDDO
RPG4 FMyFile IF E K DISK… D var1 s 10 … C read MyFile 89 C dow *in89 = ‘0’ C eval var1 = MyFld C … C read MyFile 89 C enddo
PHP <?php
In PHP, before opening a file you need to connect to a server (which can be another server than the one you are in). Then you have to explicitly open the file.
Working with Database file - UPDATE
RPG3 FMYFILE UF E K DISK… C MOVEL’abc’ VAR1 10 … C READ MYFILE 89 C *IN89 DOWEQ'0' C MOVE VAR1 MYFLD C … C UPDATMYFILE C READ MYFILE 89 C ENDDO
RPG4 FMyFile UF E K DISK… D var1 s 10 … C eval Var1 = ‘abc’ … C read MyFile 89 C dow *in89 = ‘0’ C eval MyFld = Var1 C … C update MyFile C read MyFile 89 C enddo
PHP <?php
Working with Database file - WRITE
RPG3 FMYFILE OF E K DISK… C MOVEL’abc’ VAR1 10 … C MOVE VAR1 MYFLD C WRITEMYFILE
RPG4 FMyFile OF E K DISK… D var1 s 10 … C eval Var1 = ‘abc’ … C eval MyFld = Var1 C … C write MyFile
PHP <?php
Working with Database file - SETLL
RPG3 FMYFILE IF E K DISK… C K1 KLIST C KFLD MYFLDK 20 C KFLD MYFLDK2 5 … C Z-ADD4 MYFLDK C MOVEL’abc ’ MYFLDK2 C K1 SETLLMYFILE C READ MYFILE 89
RPG4 FMyFile IF E K DISK… C K1 KLIST C KFLD MyFldK 2 0 C KFLD MyFldK2 5 … C eval MyFldK = 4 C eval MyFldK2 = ‘abc’ C K1 setll MyFile C read MyFile 89
PHP <?php
To define the KLIST, PHP uses an array. You will see that arrays are very flexible in PHP (a lot of more than in RPG), they are used every time you need to manage a list of “entities", even of different type or format. This e-mail address is being protected from spambots. You need JavaScript enabled to view it |


