<?php

$test = <<<TEST
/* Double quotes */
function("some string"); // Match: some string
function("some \"string\""); // Match: some "string"
function("some 'string'"); // Match: some 'string'

/* Single quotes */
function('some string'); // Match: some string
function('some \'string\''); // Match: some 'string'
function('some "string"'); // Match: some "string"

Function can also accept parameters after string, so it also needs to match this cases:

/* Additional parameters */
function("some string", "param"); // Match: some string
function("some string", $param); // Match: some string
TEST;
preg_match_all('#\\(\\s*("((\\\\.|[^"])+)"|\'((\\\\.|[^\'])+)\'),?#s', $test, $matches);
var_dump($matches[1]);