Hallo,
wenn man vor der Anlage eines Profils prüft, ob der Profilname bereits existiert, dann kann man sich auf das Ergebnis nicht verlassen. Wenn z.B. das Profil ‚MyTest‘ existiert, dann liefert die Abfrage auf die Existenz von ‚Mytest‘ false:
echo 'Profile Mytest existiert: ' . (int) IPS_VariableProfileExists('Mytest') . PHP_EOL;
-> Profile Mytest existiert: 0
aber die Anlage von ‚Mytest‘ schlägt fehl:
echo 'Profile Mytest angelegt: ' . (int) @IPS_CreateVariableProfile('Mytest', 0);
-> Profile Mytest angelegt: 0
Hintergrund ist, dass Profilnamen eindeutig sein müssen, dabei die Groß-/Kleinschreibung aber ignoriert wird. Hier sollte das Verhalten konsistent sein: wenn bei der Anlage die Groß-/Kleinschreibung ignoriert wird, dann sollte auch bei der Abfrage auf Existenz (und auch beim Löschen) die Groß-/Kleinschreibung ebenfalls ignoriert werden.
Zusätzlicher Hinweis: in der Doku gibt es leider keinen Hinweis auf die (Nicht-)Berücksichtigung der Groß-/Kleinschreibung bei den Profilfunktionen.
Gruß
Burkhard