Caro amigo rogerion,
Talvez seu erro possa estar em tentar usar projetos já prontos vistos em tutoriais. Eu sei que a maioria das pessoas aprende assim; no entanto, muitas vezes, só compreendemos o código que copiamos meses depois. Recomendo começar criando coisas pequenas e, aos poucos, adicionando mais funcionalidades a esses projetos. Um exemplo:
1)Inicie criando uma pequena classe chamada "Banco_de_dados", onde terá métodos para adicionar e remover itens de um array.
2)Aproveitando a classe "Banco_de_dados", crie uma interface onde você possa listar os dados, remover e adicionar itens.
3)Desenvolva uma interface para permitir que o usuário interaja com seu banco.
4)Conforme seu projeto for crescendo, você sentirá a necessidade de organizá-lo e, como você utiliza o PHP, recomendo o padrão MVC.
5)E á medida que você for utilizando sua interface, pode notar alguns bugs e assim começar a estudar sobre testes unitarios e implementalos.