За последние 24 часа нас посетили 17625 программистов и 1724 робота. Сейчас ищут 1848 программистов ...

пожалуйста подскажите как исправить!!

Тема в разделе "PHP для новичков", создана пользователем prorion4892, 26 сен 2016.

  1. prorion4892

    prorion4892 Новичок

    С нами с:
    26 сен 2016
    Сообщения:
    4
    Симпатии:
    0
    вот такая ошибка:Parse error: syntax error, unexpected '[' in C:\Server\OpenServer\domains\new\libraries\quix\vendor\illuminate\support\helpers.php on line 358


    PHP:
    1.  function class_uses_recursive($class)
    2.     {
    3.         $results = [];
    4.  
    5.         foreach (array_merge([$class => $class], class_parents($class)) as $class) {
    6.             $results += trait_uses_recursive($class);
     
  2. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    возможно у вас
    Код (Text):
    1.  
    2. foreach(array_merge([$class=>$class],class_parents($class))as$class){
    не закрывается
     
  3. prorion4892

    prorion4892 Новичок

    С нами с:
    26 сен 2016
    Сообщения:
    4
    Симпатии:
    0
    закрывается, я не все скопировал
    PHP:
    1. {
    2.         $results = [];
    3.  
    4.         foreach (array_merge([$class => $class], class_parents($class)) as $class) {
    5.             $results += trait_uses_recursive($class);
    6.         }
     
  4. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    А чем тогда
    Код (Text):
    1. function class_uses_recursive($class)   {
    Закрывается ?
     
  5. prorion4892

    prorion4892 Новичок

    С нами с:
    26 сен 2016
    Сообщения:
    4
    Симпатии:
    0
    вот весь первая часть
    PHP:
    1. <?php
    2.  
    3. use Illuminate\Support\Arr;
    4. use Illuminate\Support\Str;
    5. use Illuminate\Support\Collection;
    6. use Illuminate\Support\Debug\Dumper;
    7. use Illuminate\Contracts\Support\Htmlable;
    8.  
    9. if (! function_exists('append_config')) {
    10.     /**
    11.      * Assign high numeric IDs to a config item to force appending.
    12.      *
    13.      * @param  array  $array
    14.      * @return array
    15.      */
    16.     function append_config(array $array)
    17.     {
    18.         $start = 9999;
    19.  
    20.         foreach ($array as $key => $value) {
    21.             if (is_numeric($key)) {
    22.                 $start++;
    23.  
    24.                 $array[$start] = Arr::pull($array, $key);
    25.             }
    26.         }
    27.  
    28.         return $array;
    29.     }
    30. }
    31.  
    32. if (! function_exists('array_add')) {
    33.     /**
    34.      * Add an element to an array using "dot" notation if it doesn't exist.
    35.      *
    36.      * @param  array   $array
    37.      * @param  string  $key
    38.      * @param  mixed   $value
    39.      * @return array
    40.      */
    41.     function array_add($array, $key, $value)
    42.     {
    43.         return Arr::add($array, $key, $value);
    44.     }
    45. }
    46.  
    47. if (! function_exists('array_build')) {
    48.     /**
    49.      * Build a new array using a callback.
    50.      *
    51.      * @param  array  $array
    52.      * @param  callable  $callback
    53.      * @return array
    54.      *
    55.      * @deprecated since version 5.2.
    56.      */
    57.     function array_build($array, callable $callback)
    58.     {
    59.         return Arr::build($array, $callback);
    60.     }
    61. }
    62.  
    63. if (! function_exists('array_collapse')) {
    64.     /**
    65.      * Collapse an array of arrays into a single array.
    66.      *
    67.      * @param  array  $array
    68.      * @return array
    69.      */
    70.     function array_collapse($array)
    71.     {
    72.         return Arr::collapse($array);
    73.     }
    74. }
    75.  
    76. if (! function_exists('array_divide')) {
    77.     /**
    78.      * Divide an array into two arrays. One with keys and the other with values.
    79.      *
    80.      * @param  array  $array
    81.      * @return array
    82.      */
    83.     function array_divide($array)
    84.     {
    85.         return Arr::divide($array);
    86.     }
    87. }
    88.  
    89. if (! function_exists('array_dot')) {
    90.     /**
    91.      * Flatten a multi-dimensional associative array with dots.
    92.      *
    93.      * @param  array   $array
    94.      * @param  string  $prepend
    95.      * @return array
    96.      */
    97.     function array_dot($array, $prepend = '')
    98.     {
    99.         return Arr::dot($array, $prepend);
    100.     }
    101. }
    102.  
    103. if (! function_exists('array_except')) {
    104.     /**
    105.      * Get all of the given array except for a specified array of items.
    106.      *
    107.      * @param  array  $array
    108.      * @param  array|string  $keys
    109.      * @return array
    110.      */
    111.     function array_except($array, $keys)
    112.     {
    113.         return Arr::except($array, $keys);
    114.     }
    115. }
    116.  
    117. if (! function_exists('array_first')) {
    118.     /**
    119.      * Return the first element in an array passing a given truth test.
    120.      *
    121.      * @param  array  $array
    122.      * @param  callable|null  $callback
    123.      * @param  mixed  $default
    124.      * @return mixed
    125.      */
    126.     function array_first($array, callable $callback = null, $default = null)
    127.     {
    128.         return Arr::first($array, $callback, $default);
    129.     }
    130. }
    131.  
    132. if (! function_exists('array_flatten')) {
    133.     /**
    134.      * Flatten a multi-dimensional array into a single level.
    135.      *
    136.      * @param  array  $array
    137.      * @param  int  $depth
    138.      * @return array
    139.      */
    140.     function array_flatten($array, $depth = INF)
    141.     {
    142.         return Arr::flatten($array, $depth);
    143.     }
    144. }
    145.  
    146. if (! function_exists('array_forget')) {
    147.     /**
    148.      * Remove one or many array items from a given array using "dot" notation.
    149.      *
    150.      * @param  array  $array
    151.      * @param  array|string  $keys
    152.      * @return void
    153.      */
    154.     function array_forget(&$array, $keys)
    155.     {
    156.         return Arr::forget($array, $keys);
    157.     }
    158. }
    159.  
    160. if (! function_exists('array_get')) {
    161.     /**
    162.      * Get an item from an array using "dot" notation.
    163.      *
    164.      * @param  \ArrayAccess|array  $array
    165.      * @param  string  $key
    166.      * @param  mixed   $default
    167.      * @return mixed
    168.      */
    169.     function array_get($array, $key, $default = null)
    170.     {
    171.         return Arr::get($array, $key, $default);
    172.     }
    173. }
    174.  
    175. if (! function_exists('array_has')) {
    176.     /**
    177.      * Check if an item exists in an array using "dot" notation.
    178.      *
    179.      * @param  \ArrayAccess|array  $array
    180.      * @param  string  $key
    181.      * @return bool
    182.      */
    183.     function array_has($array, $key)
    184.     {
    185.         return Arr::has($array, $key);
    186.     }
    187. }
    188.  
    189. if (! function_exists('array_last')) {
    190.     /**
    191.      * Return the last element in an array passing a given truth test.
    192.      *
    193.      * @param  array  $array
    194.      * @param  callable|null  $callback
    195.      * @param  mixed  $default
    196.      * @return mixed
    197.      */
    198.     function array_last($array, callable $callback = null, $default = null)
    199.     {
    200.         return Arr::last($array, $callback, $default);
    201.     }
    202. }
    203.  
    204. if (! function_exists('array_only')) {
    205.     /**
    206.      * Get a subset of the items from the given array.
    207.      *
    208.      * @param  array  $array
    209.      * @param  array|string  $keys
    210.      * @return array
    211.      */
    212.     function array_only($array, $keys)
    213.     {
    214.         return Arr::only($array, $keys);
    215.     }
    216. }
    217.  
    218. if (! function_exists('array_pluck')) {
    219.     /**
    220.      * Pluck an array of values from an array.
    221.      *
    222.      * @param  array   $array
    223.      * @param  string|array  $value
    224.      * @param  string|array|null  $key
    225.      * @return array
    226.      */
    227.     function array_pluck($array, $value, $key = null)
    228.     {
    229.         return Arr::pluck($array, $value, $key);
    230.     }
    231. }
    232.  
    233. if (! function_exists('array_prepend')) {
    234.     /**
    235.      * Push an item onto the beginning of an array.
    236.      *
    237.      * @param  array  $array
    238.      * @param  mixed  $value
    239.      * @param  mixed  $key
    240.      * @return array
    241.      */
    242.     function array_prepend($array, $value, $key = null)
    243.     {
    244.         return Arr::prepend($array, $value, $key);
    245.     }
    246. }
    247.  
    248. if (! function_exists('array_pull')) {
    249.     /**
    250.      * Get a value from the array, and remove it.
    251.      *
    252.      * @param  array   $array
    253.      * @param  string  $key
    254.      * @param  mixed   $default
    255.      * @return mixed
    256.      */
    257.     function array_pull(&$array, $key, $default = null)
    258.     {
    259.         return Arr::pull($array, $key, $default);
    260.     }
    261. }
    262.  
    263. if (! function_exists('array_set')) {
    264.     /**
    265.      * Set an array item to a given value using "dot" notation.
    266.      *
    267.      * If no key is given to the method, the entire array will be replaced.
    268.      *
    269.      * @param  array   $array
    270.      * @param  string  $key
    271.      * @param  mixed   $value
    272.      * @return array
    273.      */
    274.     function array_set(&$array, $key, $value)
    275.     {
    276.         return Arr::set($array, $key, $value);
    277.     }
    278. }
    279.  
    280. if (! function_exists('array_sort')) {
    281.     /**
    282.      * Sort the array using the given callback.
    283.      *
    284.      * @param  array  $array
    285.      * @param  callable  $callback
    286.      * @return array
    287.      */
    288.     function array_sort($array, callable $callback)
    289.     {
    290.         return Arr::sort($array, $callback);
    291.     }
    292. }
    293.  
    294. if (! function_exists('array_sort_recursive')) {
    295.     /**
    296.      * Recursively sort an array by keys and values.
    297.      *
    298.      * @param  array  $array
    299.      * @return array
    300.      */
    301.     function array_sort_recursive($array)
    302.     {
    303.         return Arr::sortRecursive($array);
    304.     }
    305. }
    306.  
    307. if (! function_exists('array_where')) {
    308.     /**
    309.      * Filter the array using the given callback.
    310.      *
    311.      * @param  array  $array
    312.      * @param  callable  $callback
    313.      * @return array
    314.      */
    315.     function array_where($array, callable $callback)
    316.     {
    317.         return Arr::where($array, $callback);
    318.     }
    319. }
    320.  
    321. if (! function_exists('camel_case')) {
    322.     /**
    323.      * Convert a value to camel case.
    324.      *
    325.      * @param  string  $value
    326.      * @return string
    327.      */
    328.     function camel_case($value)
    329.     {
    330.         return Str::camel($value);
    331.     }
    332. }
    333.  
    334. if (! function_exists('class_basename')) {
    335.     /**
    336.      * Get the class "basename" of the given object / class.
    337.      *
    338.      * @param  string|object  $class
    339.      * @return string
    340.      */
    341.     function class_basename($class)
    342.     {
    343.         $class = is_object($class) ? get_class($class) : $class;
    344.  
    345.         return basename(str_replace('\\', '/', $class));
    346.     }
    347. }
    348.  
    349. if (! function_exists('class_uses_recursive')) {
    350.     /**
    351.      * Returns all traits used by a class, its subclasses and trait of their traits.
    352.      *
    353.      * @param  string  $class
    354.      * @return array
    355.      */
    356. function class_uses_recursive($class)}
    357.     {
    358.         $results = [];
    359.  
    360.         foreach (array_merge([$class => $class], class_parents($class)) as $class) {
    361.         $results += trait_uses_recursive($class);
    362.         }
    363.  
    364.         return array_unique($results);
    365.     }
    366. }
     
  6. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    я не вижу в конце ?> ты его не скопировал или все настолько плохо ?
     
  7. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    @RainBowDash ?> в конце не нужен уже давно.
    @prorion4892 версия пхп какая? Синтаксис объявления массива через квадратные скобки может просто не поддерживаться всяким говном мамонта.
     
  8. RainBowDash

    RainBowDash Активный пользователь

    С нами с:
    22 июл 2013
    Сообщения:
    220
    Симпатии:
    8
    И как понимать то что находиться со строки 349 по 356, там явно что то не так , закрывающая скобка после следующей функции...
    Код (Text):
    1.  
    2. function class_uses_recursive($class)}
    3.     {
    4.         $results = [];
     
  9. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    @RainBowDash в 349 идет условие. Если оно истинно - выполняется декларация функции. В 358 строке пхп машина находит [] - новый синтаксис объявления массива. Для старой пхп-машины это приводит к ошибке синтаксиса, ибо в её понимании до квадратных скобок должен идти T_VARIABLE с именем массива к ключам которого идет обращение. Вывод: версия пхп не та.

    В 365 декларация завершается, в 366 закрывается условный блок. Расходимся.
     
  10. prorion4892

    prorion4892 Новичок

    С нами с:
    26 сен 2016
    Сообщения:
    4
    Симпатии:
    0
    версия 53. обновлю, проверю, спасибо!
    --- Добавлено ---
    Огромнейшее спасибо!, дело было в версии
     
  11. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    @prorion4892 ставь лайки под полезными сообщениями))
     
    SamyRed и denis01 нравится это.