Throubleshooting PHP code complete - how?

Sorry for this basic question but I am evaluating PHPStorm as a replacement for my NuSphere IDE and have some issues.
Platform is Windows 8.1 64-bit with JDK 8u46 and running 64-bit version of PhpStorm EAP 141.1224.

In my fairly large project (a couple of 1000 files in total, but only 100 PHP files, no framework used) I have problems with code completeion (CC) in some files.
CC for external classes (loaded through require and includes) works in most files BUT in the two largest PHP-files, CC for two classes fails. Source code size for the affected files is about 550 kB. In the smaller files of the project CC of these two classes work and CC. Another included class works in these big files.

These two biggest files are a complete mess with a couple of big switch() statements and heaviliy nested if-elseif structures. Is this maybe too complex for PhpStorm?!? To try I just removed half of the code from the big file and CC then works!! However, refactoring code due to your IDE will cause quite a bit of extra work... What is the recommended maximum source-size?

Coming from an IDE programmed natively for the Windows platform and going to a Java-based is a painful experience. PHPStorm is DOG-SLOW on these two big files and I think if this is causing CC to fail. The problem is also that this causes the Inspections to trigger a zillion of "Method not found" messages in these files further slowing down the editing experience.

So far I have tried:
Added more memory to the IDE as suggested in the performance tips and enabled memory indication in the status bar.
Removed all plugins I don't see a need for
Disabled as many Inspections as I can

Anything else I can do before swallowing this pill and refactoring these two files and go through all the painful testing?


1 comment
Comment actions Permalink

OK - exploded my big PHP-files into smaller once and no CC is working as expected. Even re-enabled som Inspections.
The performance gains from this simple restructions are enourmous and the memory footprint has been reduced down to 150-200 MB for the entire project instead of 1200+ MB (forced me to use 64-bit version, now 32-bit is working just fine).

All other functionality is working and I am close to push the "Buy" button now!


Please sign in to leave a comment.